Значение undefined
Еще одно специальное значение, иногда используемое в JavaScript, – undefined. Оно возвращается при обращении либо к переменной, которая была объявлена, но которой никогда не присваивалось значение, либо к свойству объекта, которое не существует. Заметьте, что специальное значение undefined – это не то же самое, что null.
Хотя значения null и undefined не эквивалентны друг другу, оператор эквивалентности == считает их равными. Рассмотрим следующее выражение:
my.prop == null
Это сравнение истинно, либо если свойство my.prop не существует, либо если оно существует, но содержит значение null. Поскольку значение null и undefined обозначают отсутствие значения, это равенство часто оказывается тем, что нам нужно. Однако когда действительно требуется отличить значение null от значения undefined, нужен оператор идентичности === или оператор typeof.
В отличие от null, значение undefined не является зарезервированным словом JavaScript. Стандарт ECMAScript v3 указывает, что всегда существует глобальная переменная с именем undefined, начальным значением которой является значение undefined. Следовательно, в реализации, соответствующей стандарту, undefined можно рассматривать как ключевое слово, если только этой глобальной переменной не присвоено другое значение.
Если нельзя с уверенностью сказать, есть ли в данной реализации переменная undefined, можно просто объявить собственную переменную:
var undefined;
Объявив, но не инициализировав переменную, вы гарантируете, что переменная имеет значение undefined. Оператор void предоставляет еще один
способ получения значения undefined.
Когда значение undefined используется в логическом контексте, оно преобразуется в значение false. В числовом контексте – в значение NaN, а в строковом – в строку "undefined".
Дата добавления: 2015-08-01; просмотров: 567;