let n = Number('x');
console.log(n);
console.log(isNaN(n));
애초에 근데 Number(숫자아닌거) 하면 NaN으로 반환하긴 함.
console.log(isNaN('X'));
console.log(isNaN('15'));
console.log(isNaN(15));
console.log(isNaN('a15'));
참고로 '15'라도 문자열 안에 숫자만 있으면 숫자로 인식 하는 듯.
이거 쓰는 이유는,
예를 들어 'x' === NaN 이렇게 하면 false임.
왜냐하면 NaN 타입이 아니기 때문.
그래서 isNaN()으로 숫자와 숫자 이외 명확히 구분해 주는거임.
참고로,
console.log( 15 instanceof Number);
이건 당연히 15는 원시타입이고 객체가 아니기에 false이다.
원시타입 비교는 typeof로
console.log(typeof 15 === "number");
저렇게 "number", "string" 등 문자로 나옴.
NaN도 원시타입 상에서는 number임.
'프론트엔드-코드 > Javascript' 카테고리의 다른 글
Number(), parseInt() 차이 (0) | 2023.09.15 |
---|---|
typeof (0) | 2023.09.15 |
Math클래스 소수 (0) | 2023.09.14 |
toString()으로 여러 진법으로 변환 (0) | 2023.09.14 |
Symbol (0) | 2023.09.14 |