О магических числах
В ECMA-Script есть три "волшебных", даже "мистических" константы. Это Number.NaN , Number.POSITIVE_INFINITY и Number.NEGATIVE_INFINITY .
NaN получается, например, при делении на ноль или при преобразовании «неправильной» строки в число:
alert(10/0);
alert(parseInt('hey-hey-hey'));
alert(parseFloat('it`s not a number, baby'));
NaN не равно ни одному другому числу. И даже — сюрприз! — самому себе:
alert(NaN == parseInt('hey-hey-hey')); //выведет false
Чтобы проверить, является ли переданное значение числом или строкой, приводимой к число, надо использовать статический метод Number.isNaN :
alert(isNaN(parseInt('hey-hey-hey'))); //выведет true
Firefox выводит значения Number.POSITIVE_INFINITY и Number.NEGATIVE_INFINITY как Infinity и -Infinity соответственно:
alert(-10/-0); // Infinity
alert(-10/0); // -Infinity. Забавно, что
alert(10/-0); // тоже выведет -Infinity
|
Ошибка с парностью кавычек в 1-м примере:
Спасибо.