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