2016-08-26 2 views
5

왜이 두 연산자가 존재하는지 이해할 수 없습니다. 부울 모두 비교 ==와 ===의 경우 제대로 작동하지만 열거 비교의 경우에만 '=='작동합니다각도 2 : ngIf 지시문에서 비교 연산자 == 및 ===의 차이점

자바 스크립트에서
<div class="interventionGroup"> 

    <div class="interventionGroupHeader transition_1s" (click)="onClickHeader()"> 
     {{GroupName}} 
     <div *ngIf="expanded == true" class="expand-icon"><i class="material-icons">expand_less</i></div> <!-- WORKS --> 
     <div *ngIf="expanded === false" class="expand-icon"><i class="material-icons expand-icon">expand_more</i></div> <!-- WORKS --> 
    </div> 

    <button *ngIf="GroupType == GroupTypeEnum.mesInterventions">dfdsfsd</button> <!-- WORKS --> 

    <div style="list-style-type:none" *ngIf="expanded === true"> 
     <div *ngFor="let intervention of interventions" 
      (click)="onClick(intervention)"> 
      <intervention-button [intervention]="intervention"></intervention-button> 
     </div> 
    </div> 
</div> 
+0

[ngIf 설명] (http://stackoverflow.com/questions/tagged/ngif)을 확인하십시오. .Net :'NGif는 .Net이 애니메이션 GIF를 만들거나 읽을 수있는 기능을 만드는 오픈 소스 도구입니다. – 030

답변

11

, 연산자 '==는'에만 평등을 확인하고 ' === '유형과 평등을 확인하십시오.

0 == '0' => true 
0 === '0' => false 
+0

질문은 angular2에 대한 javascript와 관련이 없다고 생각합니다. –

+4

글쎄, 나는 이것이 관련 있다고 생각합니다. 열거 형은 변환 할 때 정적 var에 저장되므로 열거 형의 값 저장소 유형이 검사에 사용 된 값과 동일하지 않은 것입니다. –

관련 문제