Number.isNaN()
Number.isNaN() ๋ฉ์๋๋ ์ธ์๊ฐ์ด NaN ์ธ์ง ํ๋ณํ๊ณ ํ์
์ด Number ์ธ์ง๋ ํ๋ณํ๋ค. ์ ์ญ isNaN() ๋ณด๋ค ๋ ๊ฐ๋ ฅํ ๋ฒ์ ์ด๋ค. ์ซ์๊ฐ ์๋๋ค ๋ป์ ์๋ฏธํ๋๊ฒ ์๋๋ผ NaN ์ด๋๋ ์๋ฏธ์ด๋ค.
function typeOfNaN(x) {
if (Number.isNaN(x)) return 'Number NaN';
if (isNaN(x)) return 'NaN';
}
typeOfNaN('100F'); // 'NaN'
typeOfNaN(NaN); // 'Number NaN'Syntax
Number.isNaN(value)Parameters
value
NaN ์ธ์ง ํ๋ณํด์ผํ๋ ๊ฐ
Return value
์ฃผ์ด์ง ๊ฐ์ด Number ํ์
์ด๊ณ NaN ์ด๋ฉด true ๋ฅผ ๋ฐํํ๋ค. ์๋๋ฉด `falseโฉ
Description
NaN ์ด NaN ์ธ์ง ๊ณ์ฐํ ๋, ๋ ๋์ผ ์ฐ์ฐ์ == ๊ณผ === ๋ชจ๋ false ๋ก ํ๊ฐ๋๋ค. NaN == NaN ๊ณผ NaN === NaN ์ false ์ด๋ค. NaN ์ด NaN ์ธ์ง ํ๋ณํ๊ธฐ ์ํด์ Number.isNaN() ์ด ํ์ ์์์ด๋ค. ์ด ๊ฒฝ์ฐ๋ JavaScript์์ ์์ ์ ์๋ ๋ค๋ฅธ ๋ชจ๋ ๊ฐ์ ๋น๊ต์๋ ๋ค๋ฅด๋ค.
์ ์ญ isNaN() ํจ์์ ๋ฌ๋ฆฌ Number.isNaN() ๋ ๊ฐ์ ๋ก ์ธ์๊ฐ ์ซ์๋ก ๋ณํ๋์ง ์๋๋ค. NaN ์ผ๋ก ๋ณํํ์ฌ ๊ฐ์ด ์์ ํ๊ฒ ์ ๋ฌ๋์ง๋ง, ์ด๊ฒ์ NaN ์ด ์๋๋ค. ์ค์ง Number ํ์ด๊ณ NaN ์ผ ๋๋ง true ๋ฅผ ๋ฐํํ๋ค.
Examples
Number.isNaN(NaN); // true
Number.isNaN(Number.NaN); // true
Number.isNaN(0 / 0) // true
// e.g isNaN() ์ด์๋ค๋ฉด true๋ฅผ ๋ฐํํ๋ค.
// ๋ค์ด์จ ๊ฐ์ด ์ ๋ง NaN ์ธ์ง๋ฅผ ํ๋ณํ๋ค.
Number.isNaN("NaN"); // false
Number.isNaN(undefined); // false
Number.isNaN({}); // false
Number.isNaN('blabla'); // false
// ์ด ๋ชจ๋ ๊ฒ์ false๋ฅผ ๋ฐํํ๋ค.
Number.isNaN(true);
Number.isNaN(null);
Number.isNaN(37);
Number.isNaN('37');
Number.isNaN('37 37');
Number.isNaN('');
Number.isNaN(' ');Polyfill
Number.isNaN = Number.isNaN || function isNaN(input) {
return typeof input === 'number' && input !== input;
}์ ๋ง NaN์ ํน์ด์ ์ธ๋ฐ NaN !== NaN ์ true ์ด๋ค.
Last updated
Was this helpful?