Movatterモバイル変換


[0]ホーム

URL:


  1. Tecnologia Web para desenvolvedores
  2. JavaScript
  3. Referência JavaScript
  4. Objetos Globais
  5. Object
  6. Object.prototype.valueOf()

Esta página foi traduzida do inglês pela comunidade.Saiba mais e junte-se à comunidade 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 ⁨julho de 2015⁩.

O métodovalueOf() retorna o valor primitivo do objeto especificado.

Experimente

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

Sintaxe

object.valueOf()

Valor retornado

O valor primitivo do objeto especificado.

Descrição

JavaScript chama o métodovalueOf para converter um objeto em um valor primitivo. Você raramente precisará chamar o métodovalueOf por ele mesmo; O JavaScript chamará ele automaticamente quando encontrar um objeto onde um valor primitivo for esperado.

Por padrão, o métodovalueOf é herdado por cada objeto descendente deObject. Todo núcleo embutido do objeto sobrescreve esse método para retornar um valor apropriado. Se um objeto não tem um valor primitivo,valueOf retorna o próprio objeto.

Você pode usarvalueOf dentro do seu próprio código para converter um objeto embutido, em um valor primitivo. Quando você criar um objeto customizado, você pode sobrescreverObject.prototype.valueOf() para chamar um método customizado ao invés do método padrãoObject.

SobrescrevendovalueOf para objetos customizados

Você pode criar uma função para ser chamada no lougar do método padrãovalueOf. Sua função não pode ter nenhum argumento.

Suponha que você tem um tipo de objetoMyNumberType e você quer criar um métodovalueOf para ele. O código a seguir atribui uma função definida por usuário para o métodovalueOf desse objeto:

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

Com o código anterior no lugar, a qualquer hora um objeto do tipoMyNumberType é usado em um contexto onde deve ser representado como um valor primitivo, o JavaScript chama automaticamente a função definida no código anterior.

Um métodovalueOf de um objeto é geralmente chamado pelo JavaScript, mas você pode chamá-lo se quiser da seguinte maneira:

js
myNumberType.valueOf();

Nota:Objetos em contexto de string convertidos através do métodotoString(), o que é diferente de objetosString convertendo para string primiriva utlizandovalueOf. Todos os objetos têm uma conversão string, somente se "[object type]". Mas muitos objetos não convertem para number, boolean, or function.

Exemplos

UsandovalueOf

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

Especificações

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

Compatibilidade com navegadores

Veja também

Help improve MDN

Learn how to contribute

This page was last modified on byMDN contributors.


[8]ページ先頭

©2009-2025 Movatter.jp