반응형
NaN === NaN이 거짓 인 이유는 무엇입니까?
이 질문에 이미 답변이 있습니다.
Javascript로 NaN === NaN
반환 false
되는 이유는 무엇 입니까?
> undefined === undefined
true
> NaN === NaN
false
> a = NaN
NaN
> a === a
false
온 문서 페이지 나는이를 참조하십시오
NaN에 대한 테스트
같음 연산자 (
==
및===
)는에 대해 값을 테스트하는 데 사용할 수 없습니다NaN
.isNaN
대신 사용하십시오 .
질문에 대한 답변이있는 참조가 있습니까? 환영합니다.
엄격한 대답 : JS 사양 이 그렇게 말하고 있기 때문에 :
- Type (x)가 숫자이면
- x가 NaN이면 false를 반환합니다.
- y가 NaN이면 false를 반환합니다.
유용한 답변 : 부동 소수점 숫자에 대한 IEEE 754 사양 (부동 소수점에 대해 모든 언어에서 사용됨)은 NaN이 결코 같지 않다고 말합니다.
이 동작은 IEEE-754 표준 (이 점에서 JavaScript 사양이 따르는)에 의해 지정됩니다 .
자세한 설명 은 IEEE754 NaN 값에 대해 false를 반환하는 모든 비교의 근거는 무엇입니까?를 참조하십시오 .
의 양쪽 모두 NaN===NaN
동일한 값 을 포함하고 해당 유형은 Number
동일하지만 동일하지 않습니다. ECMA-262에 따르면 양쪽 ==
또는 ===
포함 NaN
하면 거짓 값이 발생합니다.
여기에서 세부 규칙을 찾을 수 있습니다.
http://www.ecma-international.org/ecma-262/5.1/#sec-11.9.3
참조 URL : https://stackoverflow.com/questions/19955898/why-is-nan-nan-false
반응형
'Program Tip' 카테고리의 다른 글
git에서 ^ {}은 무엇을 의미합니까? (0) | 2021.01.08 |
---|---|
네트워크에서 Android 장치를 검색하는 방법이 있습니까? (0) | 2021.01.08 |
isset ()과 __isset ()의 차이점은 무엇입니까? (0) | 2021.01.08 |
Chrome의 네트워크 탭에서 모든 Ajax 응답을 검색하는 방법은 무엇입니까? (0) | 2021.01.08 |
Kafka의 키 / 값 쌍 기반 메시징의 목적은 무엇입니까? (0) | 2021.01.08 |