Javascript
[Javascript] isNaN() / Number.isNaN() - NaN인지 판별
쭈꾸미
2022. 2. 3. 14:57
NaN이란?
Not-A-Number. 해당 값이 숫자가 아님을 나타내는 속성이다.
NaN 여부는 === / == 로 판별할 수 없으며, isNaN 혹은 Number.isNaN 함수를 이용해 판별해야 한다.
isNaN()
어떠한 값이 NaN인지 판별하는 함수. 값이 NaN일 경우 true, NaN이 아닐 경우 false를 반환한다.
isNaN(value)
// 결과값은 boolean으로 반환한다.
Number.isNaN()
isNaN의 경우 몇몇 케이스에서 혼동의 여지가 있다. (매개변수의 타입을 의도치 않게 숫자로 변환할 수 있음, 문자열인 값을 true로 반환함 등등..) 그러므로 엄격한 판별을 요할 때에는 Number.isNaN()을 이용하는 편이 좋다. 해당 값의 유형이 Number이면서 값이 NaN일 경우 true, 아닐 경우 false를 반환한다.
Number.isNaN(value)
// 결과값은 boolean으로 반환한다.