NaN

Глобальна властивість NaN є значенням, представляюче не число (Not-A-Number).

Синтаксис:

NaN

Опис:

NaN є властивістю глобального об'єкта. Початковим значенням NaN є не-число (Not-A-Number) - те ж саме значення має Number.NaN. В сучасних браузерах NaN є не настроювальною і не записуваною властивістю. Навіть коли це не так, уникайте її перевизначення.

У програмах NaN використовується рідко. Він виникає, коли математичні функції не можуть повернути значення (наприклад, при виклику Math.sqrt(-1)) або коли функція зчитування числа з рядка не може це зробити, тому що в рядку не число (parseInt ( 'ляляля')). Перевірка на рівність NaN Оператори рівності (== і ===) не можуть використовуватися для перевірки значення на рівність NaN. Замість них використовуйте функції Number.isNaN() або isNaN().

Приклад:

var n=Number('5# @'); alert(n); //NaN n = Math.sqrt(-1); alert(n); //NaN

Зверніть увагу що typeof(NaN) видає number.

var x=5*'Текст'; console.log(x); //NaN alert(typeof(x)); //number NaN === NaN ; // false Number.NaN === NaN ; // false isNaN(NaN); // true isNaN(Number.NaN); // true