JS
[Javascript] "true" == true 의 결과는?
gimgongta
2022. 8. 13. 16:48
반응형
결론부터 말씀드리면 false 입니다
대개 문자열은 true로 변환 된다고 생각하기 때문에 결과가 true라고 생각 할 수도 있다
실제로 아래의 코드
if( "abc" ) {
console.log("true")
}
는 조건문이 true 로 여겨져 구문 안의 콘솔로그가 실행이 된다.
하지만 문자열은 '항등연산자'(==)를 만나면 NaN으로 형변환이 된다.
또한 Boolean타입은 항등연산자를 만나면 숫자형으로 형변환이 된다.
즉 "true" == true는
NaN == 1로 변환되기 때문에
결과는 false가 된다.
참고로 빈 문자열은 항등연산자를 만나면 0으로 변환된다...
반응형