사람이 생가각하는 숫자는 10진수이다. 하지만 컴퓨터의 기본 숫자는 2진수이다. 10진수와 2진수를 왔다갔다하면, 소수점의 문제가 생길 수 있다.
자바스크립트에서는 부동소수점 방법을 통해 문제를 해결하려고 하고 있다.
isNaN은 자바스크립트에서 숫자를 판별하기가 어렵다는 것릉 인정하는 명령어이다. isNaN 은 is Not A Number
이고, 결과값은 boolean타입으로 나온다.
isNaN을 사용할 떄 생길 수 있는 문제가 있는데, 가장 큰 문제는 의미론적인 부분이다.
isNaN(123) // false => 입력된 숫자가 아닌게 아니다 => 숫자다
isNaN(123 + 'string') // true
Number.isNaN(123 + 'string') // false
ES6부터 새로 등장한 기능이 있는데, Number.isNaN
를 통해 검사를 보다 엄격하게 한다.