8e589012

JavaScript вызывает метод valueOf для


JavaScript вызывает метод valueOf для конвертации объекта в примитивное значение. Вам редко нужно будет вызвать метод valueOf самостоятельно; JavaScript автоматически вызывает его при обнаружении объекта, где ожидается примитивное значение.
По умолчанию метод valueOf наследуется каждым объектом - потомком объекта Object. Каждый встроенный объект ядра языка переопределяет этот метод, чтобы возвращать соответствующее значение. Если объект не имеет примитивного значения, valueOf возвращает сам объект, который выводится так:
[object Object] Вы можете также использовать valueOf в Вашем коде для конвертации встроенного объекта в примитивное значение. Если Вы создаёте специальный объект, Вы можете переопределить Object.valueOf для вызова специального метода вместо метода по умолчанию объекта Object .
Переопределение valueOf для специальных объектов. Вы можете создать функцию, вызываемую вместо метода по умолчанию valueOf. Ваша функция обязана не принимать никаких аргументов.
Предположим, у вас есть тип объектов myNumberType и Вы хотите создать метод valueOf для него. Следующий код присваивает определённую пользователем функцию методу valueOf объекта:
myNumberType.prototype.valueOf = new Function(functionText) После этого всегда при вызове объекта типа myNumberType, используемого в контексте, где необходимо представление в виде примитивного значения, JavaScript автоматически вызывает функцию, определённую в предыдущем коде.
Метод valueOf объекта обычно вызывается JavaScript, но вы и сами может вызвать его:
myNumber.valueOf() ПРИМЕЧАНИЕ: Объекты в строковом контексте конвертируются с помощью метода toString, который отличается от конвертирования String-объектов в строковые примитивы с использованием метода valueOf. Все строковые объекты имеют строковую конверсию, если только "[object type]". Но многие объекты не конвертируются в number, boolean или function.

Содержание    Назад    Вперед