우선 나는 방법 isNaN()
과 Number.isNaN()
작업을 알고 있다고 언급하고 싶습니다 . David Flanagan 의 Definite Guide 를 읽고 있으며 값이 NaN
다음 과 같은지 확인하는 방법에 대한 예를 제공합니다 .
x !== x
이 true
경우 if 만 x
입니다 NaN
.
그러나 이제 질문이 있습니다. 왜 엄격한 비교를 사용합니까? 그것은 보인다
x != x
같은 방식으로 작동합니다. 이 두 버전을 사용하거나 내가 돌아 자바 스크립트에서 어떤 값 (들) 실종 안전 true
을 위해 x !== x
및 false
위해를 x != x
?
NaN
고유 한 유형이 아니며 숫자입니다. 자체와 같지 않은 고유 한 값 입니다.
===
NaN과의 비교 를 통해 NaN이 자신과 같지 않다는 점 을 지적 합니다. 그는 "잘못되지 않았습니다"라고 가르치는 연습으로하고 있는데, 그것이 효과가 없다는 것을 보여줍니다.
!==
수표보다!=
수표를 선호 할 수 있습니다 . 내가 아는 한 where where 다른 값은 없습니다x != x
. 그러나 JavaScript 개발자에는 두 가지 뚜렷한 그룹이 있습니다. 선호하는 사람!=
과 선호 하는 사람은!==
속도, 선명도, 표현력 등이 있습니다.