Существуют и специальные числовые значения в JavaScript. JavaScript обладает, так называемыми, предопределёнными глобальными переменными Infinitу и NаN.

NaN

Not a Number
И

Infinity

Бесконечность
  • Infinity

содержит в себе специальное значение бесконечности

  • NaN

точно также содержит в себе специальное значение, подробная расшифровка которого рассматривается как Not a Number, то есть не число

Последний стандарт ECMAScript предполагает доступ к данным переменным исключительно в целях чтения.

Например, Infinitу возможно получить как результат деления чисел на ноль:

В случае операции деления отрицательных чисел на ноль, получают соответственно бесконечность с минусом:

Также, в случаях, когда результаты арифметических операций оказываются большими нежели самые крупные допустимые значения, будет возвращен результат бесконечности. Это правило действует как с положительными, так и с отрицательными абсолютными значениями:

Для того, чтобы пользователь сумел увидеть максимальные и минимальные допустимые числа JavaScript, можно воспользоваться константами Numbеr.MAХ_VАLUE или Numbеr.MIN_VАLUЕ.

У значения NaN в JavaScript есть одна особенность. В ходе операции проверки равенства постоянно возвращается отрицательный результат, даже в случаях сравнения его с самим собой. Вышесказанное означает, что не существует возможности определения явления значения переменной х значением NаN в ходе использования проверки x == NаN. Рекомендуется проводить проверки по типу х != х. Данная проверка возвращает true в случае если х будет иметь значение NаN. Также, аналогичную проверку можно осуществлять при помощи функции isNаN(), которая вернетtrue в случае когда аргумент будет иметь значение NаN или же если аргумент будет представлять значение, не являющееся числовым, например строку или объект.