혹시나 잘못된 개념 전달이 있다면 댓글 부탁드립니다. 저의 성장의 도움이 됩니다.
알고리즘 문제를 풀다가 Number(변수) !== NaN
의 결과가 항상 true인 것을 알게되었다.
NaN은 다른 모든 값과 비교(
==
,!=
,===
,!==
)했을 때 같지 않으며, 다른 NaN과도 같지 않습니다. NaN의 판별은 Number.isNaN() 또는 isNaN()을 사용하면 제일 분명하게 수행할 수 있습니다.
MDN 공식문서
isNaN(비교할값)
-> 추천
Number.isNaN(비교할값)
Number.isNaN(비교할값)
은 비교할 값 자체가 NaN이어야 하므로 일반적으로는 isNaN(비교할값)
을 사용하는 것이 좋다.