Назад к вопросам
Intern
203
questionbank

Каково значение NaN?

Sobes Copilot

Получайте ответы в реальном времени

Ответ от нейросети

sobes.tech AI

JavaScript'ий примитивный тип, представляющий не-числовое значение. Возникает при неудачных попытках преобразовать нечисловые значения в числа или при выполнении математических операций, результат которых не является действительным числом.

Основные свойства:

  • typeof NaN равно "number".
  • NaN не равно самому себе (NaN === NaN ложно).
  • Единственный способ проверить на NaN — использовать isNaN() или Number.isNaN().

Примеры получения NaN:

// неудачное приобразование
Number('привет'); // NaN

// недействительные математические операции
0 / 0; // NaN
Math.sqrt(-1); // NaN

// использование NaN в операциях
5 + NaN; // NaN

Примеры проверки на NaN:

// неправильная проверка
NaN === NaN; // false

// правильная проверка для глобальной области видимости (может давать ложноположительные результаты для нечисловых значений)
isNaN(NaN); // true
isNaN('привет'); // true

// правильная проверка для NaN (рекомендуется)
Number.isNaN(NaN); // true
Number.isNaN('привет'); // false