본문 바로가기
IT/Javascript

[Javascript] - 자바스크립트 비교연산자 동등비교(==) vs 일치비교(===) 차이점

by 차이나는 개발자 2021. 7. 30.
728x90
반응형

#자바스크립트 비교연산자 동등비교(==) vs 일치비교(===) 차이점

 

 

-동등 비교(==) 연산자와 일치 비교(===) 연산자는 좌항과 우항의 피연산자가 같은 값으로 평가되는지 비교해

boolean 값을 반환한다.

-동등 비교(==) 연산자는 느슨한 비교를 일치 비교(===) 연산자는 엄격한 비교를 한다.

 

#동등 비교(==) 연산자는 좌항과 우항의 피연산자를 비교할 떄 먼저 암묵적 타입 변환을 통해 타입을 일치시킨 후 같은 값인지 비교한다. 예측하기 어려운 결과를 만들어 낼 수도 있기 때문에 일치 비교(===) 연산자를 사용하는 것을 추천한다.

 

#예시

// 동등 비교
3 == 3; // true

// 타입은 다르지만 암묵적 타입변환을 통해 타입을 일치시킨 후 비교한다.
3 == '3'; // true

 

 

#일치 비교(===) 연산자는 좌항과 우항의 피연산자가 타입도 같고 값도 같은 경우에 한하여 true를 반환한다.

즉, 동등 비교(==)와 달리 암묵적 타입 변환을 하지 않고 값을 비교한다.

 

#예시

// 일치 비교
3 === 3; // true;

// 암묵적 타입 변환을 하지 않는다.
// 값과 타입이 모두 같아야 true를 반환한다.
5 === '5'; // false

 

 

#NaN은 자신과 일치하지 않는 유일한 값이다.

 

#예시

NaN === NaN; // false

 

 

 

728x90
반응형

댓글