| [ Web Proxy ] |
| Viewing: https://developer.mozilla.org/pt-BR/docs/Web/JavaScript/Reference/Global_Objects/Object/valueOf | [Back] [Original] |
Get to know MDN better
Esta pgina foi traduzida do ingls pela comunidade. Saiba mais e junte-se comunidade MDN Web Docs.
This feature is well established and works across many devices and browser versions. Its been available across browsers since julho de 2015.
O mtodo valueOf() retorna o valor primitivo do objeto especificado.
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
object.valueOf()
O valor primitivo do objeto especificado.
JavaScript chama o mtodo valueOf para converter um objeto em um valor primitivo. Voc raramente precisar chamar o mtodo valueOf por ele mesmo; O JavaScript chamar ele automaticamente quando encontrar um objeto onde um valor primitivo for esperado.
Por padro, o mtodo valueOf herdado por cada objeto descendente de Object. Todo ncleo embutido do objeto sobrescreve esse mtodo para retornar um valor apropriado. Se um objeto no tem um valor primitivo, valueOf retorna o prprio objeto.
Voc pode usar valueOf dentro do seu prprio cdigo para converter um objeto embutido, em um valor primitivo. Quando voc criar um objeto customizado, voc pode sobrescrever Object.prototype.valueOf() para chamar um mtodo customizado ao invs do mtodo padro Object.
valueOf para objetos customizadosVoc pode criar uma funo para ser chamada no lougar do mtodo padro valueOf. Sua funo no pode ter nenhum argumento.
Suponha que voc tem um tipo de objeto MyNumberType e voc quer criar um mtodo valueOf para ele. O cdigo a seguir atribui uma funo definida por usurio para o mtodo valueOf desse objeto:
MyNumberType.prototype.valueOf = function () {
return customPrimitiveValue;
};
Com o cdigo anterior no lugar, a qualquer hora um objeto do tipo MyNumberType usado em um contexto onde deve ser representado como um valor primitivo, o JavaScript chama automaticamente a funo definida no cdigo anterior.
Um mtodo valueOf de um objeto geralmente chamado pelo JavaScript, mas voc pode cham-lo se quiser da seguinte maneira:
myNumberType.valueOf();
Nota:
Objetos em contexto de string convertidos atravs do mtodo toString(), o que diferente de objetos String convertendo para string primiriva utlizando valueOf. Todos os objetos tm uma converso string, somente se "[object type]". Mas muitos objetos no convertem para number, boolean, or function.
valueOffunction MyNumberType(n) {
this.number = n;
}
MyNumberType.prototype.valueOf = function () {
return this.number;
};
var myObj = new MyNumberType(4);
myObj + 3; // 7
| Specification |
|---|
| ECMAScript 2027 LanguageSpecification # sec-object.prototype.valueof |
This page was last modified on 22 de mai. de 2026 by MDN contributors.
ObjectObject.assign()Object.create()Object.defineProperties()Object.defineProperty()Object.entries()Object.freeze()Object.fromEntries()Object.getOwnPropertyDescriptor()Object.getOwnPropertyDescriptors()Object.getOwnPropertyNames()Object.getOwnPropertySymbols()Object.getPrototypeOf()groupBy()Object.hasOwn()Object.is()Object.isExtensible()Object.isFrozen()Object.isSealed()Object.keys()Object.preventExtensions()Object.seal()Object.setPrototypeOf()Object.values()Object.prototype.__defineGetter__()Object.prototype.__defineSetter__()Object.prototype.__lookupGetter__()Object.prototype.__lookupSetter__()Object.prototype.hasOwnProperty()Object.prototype.isPrototypeOf()Object.prototype.propertyIsEnumerable()Object.prototype.toLocaleString()Object.prototype.toString()Object.prototype.valueOf()Object/FunctionObject.prototype.__defineGetter__()Object.prototype.__defineSetter__()Object.prototype.__lookupGetter__()Object.prototype.__lookupSetter__()Object.prototype.hasOwnProperty()Object.prototype.isPrototypeOf()Object.prototype.propertyIsEnumerable()Object.prototype.toLocaleString()Object.prototype.toString()Object.prototype.valueOf()Your blueprint for a better internet.
Portions of this content are 19982026 by individual mozilla.org contributors. Content available under a Creative Commons license.
| Web Proxy Viewer | New URL | Original Page |