· NaN은 falsy 값입니다.
· ==은 type casting한 후 비교 연산합니다.
· Boolean(NaN), !!NaN 모두 false가 나옵니다.
그럼 맨 마지막 부분이 왜 그런 지 설명해보세요.
Boolean('') == false; // true
Boolean(0) == false; // true
Boolean(NaN) == false; // true
'' == false; // true
0 == false; // true
NaN == false; // false => 왜 이렇게 나올까요?
NaN == NaN // false NaN 은 그 무엇과도 동등할수 없는 값임. 심지어 자기 자신과도 유일하게 확인할수 있는 메소드는 Number.isNaN()임