모던 자바스크립트 Deep Dive #7. 연산자

epiphany·2024년 1월 16일
post-thumbnail

7.3 비교 연산자

동등 비교 연산자는 느슨한 비교를 하지만 일치 비교 연산자는 엄격한 비교를 한다.

  • == / != (동등 비교 연산자)
  • === / !== (일치 비교 연산자)

동등 비교 연산자는 좌항과 우항의 피연산자를 비교할 때 먼저 암묵적 타입 변환을 통해 타입을 일치시킨 후 같은 값인지 비교한다.

동등 비교 연산자는 좌항과 우항의 피연산자가 타입은 다르더라도 암묵적 타입 변환 후에 같은 값일 수 있다면 true를 반환한다.

'0' == '';  // false
0 == '';  // true
0 == '0';  // true
false == 'false';  // false
false == '0';  // true
false == null;  // false
false == undefined;  // false

동등 비교 연산자는 예측하기 어려운 결과를 만들어내기 때문에 일치 비교 연산자를 사용한다.

NaN은 자신과 일치 하지 않는 유일한 값이다.
숫자가 NaN인지 조사하려면 빌트인 함수 Number.isNaN을 사용한다.

NaN === NaN; // false
Number.isNaN(NaN) // true
profile
iamda.tistory.com 이사 중

0개의 댓글