Movatterモバイル変換


[0]ホーム

URL:


  1. Tecnología web para desarrolladores
  2. JavaScript
  3. Referencia de JavaScript
  4. Objetos globales
  5. Object
  6. Object.prototype.valueOf()

Esta página ha sido traducida del inglés por la comunidad.Aprende más y únete a la comunidad de MDN Web Docs.

View in EnglishAlways switch to English

Object.prototype.valueOf()

Baseline Widely available

This feature is well established and works across many devices and browser versions. It’s been available across browsers since ⁨julio de 2015⁩.

El métodovalueOf() retorna el valor primitivo del objeto especificado.

Sintaxis

object.valueOf()

Valor de retorno

El valor primitivo del objeto especificado.

Pruébalo

function MyNumberType(n) {  this.number = n;}MyNumberType.prototype.valueOf = function () {  return this.number;};const object1 = new MyNumberType(4);console.log(object1 + 3);// Expected output: 7

Descripción

JavaScript utiliza el métodovalueOf para convertir un objeto a un valor primitivo. Raramente usted necesitará invocar el métodovalueOf por su cuenta; JavaScript lo realizará de forma automática cuando encuentre un objeto, donde un valor primitivo es esperado.

Por defecto, el métodovalueOf es heredado por cada objeto descendiente deObject. Cada objeto incorporado en el núcleo del lenguaje sobreescribe este método para retornar un valor apropiado. Si un objeto no tiene un valor primitivo,valueOf devuelve el objeto en sí.

Puede utilizarvalueOf dentro de su propio código para convertir un objeto incorporado en el núcleo del lenguaje en un valor primitivo. Cuando usted crea un objeto personalizado, puede sobreescribir el comportamiento deObject.prototype.valueOf() para invocar un método personalizado, en vez de utilizar el método por defectoObject.

SobreescribiendovalueOf para objetos personalizados

Puede crear una función para ser invocada en lugar de utilizar el métodovalueOf por defecto. Su función no debe contener ningún parámetro.

Suponga que tiene un objeto de tipomyNumberType y usted quiere crear un métodovalueOf para este. El código a continuación asigna una función personalizada al métodovalueOf:

js
myNumberType.prototype.valueOf = function () {  return customPrimitiveValue;};

Al tener el código anterior funcionando, cada vez que un objeto de tipomyNumberType es utilizado en un contexto donde deba ser representado por un valor primitivo, JavaScript automáticamente invocará la función definida en el código anterior.

El métodovalueOf es invocado usualmente por JavaScript pero usted puede invocarlo directamente como sigue a continuación:

js
myNumber.valueOf();

Nota:Objetos en contextos de string realizan la conversión a string a través del métodotoString() , el cual, es diferente deString para convertir objetos a primitivos string utilizando el métodovalueOf. Todos los objetos pueden ser convertidos a string, si solo "[object _type_]". Pero muchos objetos no se pueden convertir a number, boolean o function.

Ejemplos

UtilizandovalueOf

js
function myNumberType(n) {  this.number = n;}myNumberType.prototype.valueOf = function () {  return this.number;};myObj = new myNumberType(4);myObj + 3; // 7

Especificaciones

Specification
ECMAScript® 2026 Language Specification
# sec-object.prototype.valueof

Compatibilidad con navegadores

Vea también

Help improve MDN

Learn how to contribute

This page was last modified on byMDN contributors.


[8]ページ先頭

©2009-2025 Movatter.jp