728x90
반응형
동등연산자 '=='
자료형이 다른 피연산자들을 계산할 때
숫자형으로 변환하여 계산한다.
숫자 0과 문자열 "0"을 불린형으로 바꾸면
숫자 0은 false, 문자열 "0"은 true이지만
두 피연산자를 동등연사자로 직접 비교하면
true로 서로 동등하다고 인식합니다.
let a = 0;
let b = "0";
alert( Boolean(a) ); // false
alert( Boolean(b) ); // true
alert( a==b ); // true
*주의*
예외적으로 null과 undefined를 비교할 경우
null과 undefined는 각각 숫자형으로 변환할 때
0과 NaN으로 다르게 변환되지만
동등연산자'=='는 둘을 같다고 판단한다.
다른 비교 연산자에서는 제대로 숫자형으로 변환되어 계산된다.
alert( null > 0 ); // false
alert( null == 0 ); // false
alert( null >= 0 ); // true
alert( undefined > 0 ); // false
alert( undefined == 0 ); // false
alert( undefined >= 0 ); // false
일치연산자 '==='
일치연산자는 자료형의 동등 여부까지 검사한다.
따라서 자료형이 다르면 false를 반환한다.
728x90
반응형
'JavaScript' 카테고리의 다른 글
JavaScript nullish병합연산자 '??' (0) | 2022.01.19 |
---|---|
JavaScript 논리연산자 (0) | 2022.01.19 |
JavaScript '+'연산자 (0) | 2022.01.17 |
JavaScript 형 변환 (0) | 2022.01.17 |
JavaScript 간단하게 브라우저와의 상호작용하기 : alert, prompt, confirm (0) | 2022.01.13 |
댓글