Значение NaN
Значение NaN (сокращение от Not-A-Number) обозначает «не число». Такое значение возникает при попытках сделать недопустимую математическую операцию.
Пример
Давайте умножим строку с буквами на число:
console.log(‘aaa’ * 3);
Результат выполнения кода:
Пример
Давайте попробуем разделить одну строку на другую:
console.log(‘aaa’ / ‘bbb’);
После выполнения кода мы также получим NaN :
Пример
Теперь давайте суммируем значение NaN с числом:
console.log(NaN + 3);
Результат выполнения кода:
Смотрите также
- функцию isNaN ,
которая осуществляет проверку на NaN
JavaScript: Infinity и NaN
В JavaScript имеется предопределённая глобальная переменная Infinity . Она хранит специальное значение обозначающее бесконечность – Infinity . Эта переменная доступна только для чтения.
Значение Infinity можно получить:
- В результате деления числа на 0.
- Если результат вычислений, не попадает в допустимый диапазон чисел JavaScript. Любое отрицательное число, которое не может быть представлено, считается отрицательной бесконечностью ( -Infinity ), а положительное – положительной бесконечностью ( Infinity ).
alert(123 / 0); // Infinity alert(-12345 / 0); // -Infinity alert(1e500); // Infinity alert(1 - 1e500); // -Infinity
Если вычисление возвращает одну из бесконечностей, это значение не может использоваться ни в каких дальнейших вычислениях, потому что значение Infinity не имеет числового представления и любая арифметическая операция с бесконечностью всегда возвращает бесконечность:
alert(20 + Infinity); // Infinity
NaN
Также, в JavaScript имеется предопределённая глобальная переменная NaN . Она хранит специальное значение NaN (NaN сокращение от англ. Not a Number – не число). Эта переменная доступна только для чтения.
Значение NaN используется для обозначения математической ошибки, которая возникает в том случае, если математическая операция не может быть совершена:
var a = 10, b = "текст"; document.write(a - b); // Операнд не может быть преобразован в число document.write(0 / 0); // Деление нуля на нуль
Значение NaN обладает одной особенностью: оно не равно никакому значению, в том числе и другому NaN :
NaN == NaN // false
Чтобы определить, является ли значение переменной значением NaN следует выполнить проверку на неравенство x != x . Эта проверка вернёт true тогда и только тогда, когда x имеет значение NaN :
var x = NaN; alert(x != x); // true
Если вычисление возвращает значение NaN , это значение не может использоваться ни в каких дальнейших вычислениях, потому что значение NaN не имеет числового представления и любая арифметическая операция с NaN всегда возвращает NaN :
var num = NaN / 10; // NaN
С этой темой смотрят:
Копирование материалов с данного сайта возможно только с разрешения администрации сайта
и при указании прямой активной ссылки на источник.
2011 – 2023 © puzzleweb.ru | razumnikum.ru
Что такое nan в javascript
Свойство NaN представляет значение “Not-a-Number”. Это свойство указывает, что значение не является числом.
Свойство NaN аналогично свойству Number.Nan.
Совет. Используйте глобальную функцию isNaN(), чтобы проверить, является ли значение значением NaN.
Поддержка браузеров
Синтаксис
Технические подробности
| Возвращаемое значение: | NaN |
| Версия JavaScript: | ECMAScript 1 |
NaN в JavaScript — Не число — Функция isNaN

NaN означает «не число» — от сокращ. «Not a Number».
Хотя NaN означает «не число», оно относится к значениям числового типа number . Вот такой ПАРАДОКС.
Итак, NaN используется для представления числовых значений, которые никак не выражаются в Javascript .
Например, выражение 0 / 0 (деление нуля на самого себя) имеет неопределенный результат даже в математике, поэтому и для Javascript это будет NaN (не число).
Следует знать, что NaN даже не равно самому себе! NaN != NaN

Как используется NaN в JavaScript?
Как используется не число NaN в JavaScript?
Если NaN — это не число, то логично предположить, что оно может использоваться для проверки предполагаемых числовых значений на NaN.
Фрагмент кода
var myNum = 0 / 0 ;
console.log(myNum); /* Выводим значение переменной — это NaN */
if (myNum == NaN) myNum = 0 ;
console.log(myNum); /* Вывод значения переменной — ничего не дает */
>
Переменная myNum равна NaN — это очевидно (деление на ноль — это NaN).
Так как проверять принадлежность к числам в Javascript ? Читайте об этом далее.
Функция isNaN — Не число — это истина
В Javascript для проверки результатов на предмет их принадлежности к числам используется функция isNaN.
Она позволяет проверить — что находится в переменной : число или нет. Функция isNaN возвращает true , если в переменной не число и false , если в ней содержится число.
О функции isNaN уже шла речь в этой заметке.
Теперь можно вернуться к предыдущему примеру и легко осуществить требуемую проверку переменной.
Фрагмент кода
var myNum = 0 / 0 ;
console.log(myNum); /* Выводим значение переменной — это NaN */
if ( isNaN (myNum)) < /* Если myNum не число, то . */
myNum = 0 ;
console.log(myNum);
>
Итак, переменная myNum не является числом.
Здесь Вы познакомились с тем, что такое NaN в Javascript , с парадоксальными особенностями этого «не числа». А также узнали о том, что функция isNaN служит для проверки результатов исполнения кода на их принадлежность к числам.
Читайте также.

Функция isNaN — Число или не число

Преобразование и приведение типов — Не число NaN

Создание переменных — Присвоение значений переменным

Добавление элементов в массив

Операции над переменными – Сложение чисел и строк

Свойство length — число элементов массива

Что нужно для изучения javascript?

Метод write() объекта document
