Преобразование типов
Рассмотрим, как значения каждого типа преобразуются в значения других типов. Основное правило заключается в следующем: если значение одного типа используется в контексте, требующем значение некоего другого типа, интерпретатор JavaScript автоматически пытается преобразовать это значение.
Так, например, если в логическом контексте используется число, оно преобразуется в значение логического типа. Если в контексте строки используется объект, он преобразуется в строковое значение. Если в числовом контексте используется строка, интерпретатор JavaScript пытается преобразовать ее в число.
В табл. 3 приводится информация о том, как производится преобразование значений, когда значение некоторого типа задействовано в определенном контексте.
Таблица 3 Автоматическое преобразование типов
Контекст, в котором используется значение | ||||
Тип значения | Строковый | Числовой | Логический | Объектный |
Неопределен_ ное значение | "undefined" | NaN | false | Error |
null | "null" | false | Error | |
Непустая строка | Как есть | Числовое значение строки или NaN | true | Объект String |
Пустая строка | Как есть | false | Объект String | |
"0" | Как есть | false | Объект Number | |
NaN | "NaN" | Как есть | false | Объект Number |
Infinity | "Infinity" | Как есть | true | Объект Number |
-Infinity | "-Infinity" | Как есть | true | Объект Number |
Любое другое число | Строковое представление числа | Как есть | true | Объект Number |
true | "true" | Как есть | Объект Boolean | |
false | "false" | Как есть | Объект Boolean | |
Объект | toString() | valueOf(), toString() или NaN | true | Как есть |
Дата добавления: 2015-08-01; просмотров: 673;