| [ Web Proxy ] |
| Viewing: https://developer.mozilla.org/es/docs/Web/JavaScript/Reference/Global_Objects/Object/constructor | [Back] [Original] |
Get to know MDN better
Esta pgina ha sido traducida del ingls por la comunidad. Aprende ms y nete a la comunidad de MDN Web Docs.
This feature is well established and works across many devices and browser versions. Its been available across browsers since julio de 2015.
Retorna una referencia a la funcin del Object que cre el objeto de la instancia. Note que el valor de esta propiedad es una referencia a la funcin misma, no a un string conteniendo el nombre de la funcin. El valor es slo de lectura para valores primitivos tales como 1, true y 'test'.
Todos los objetos tienen una propiedad constructor. Los objetos creados sin explicitar el uso de una funcin (como son los objetos y las cadenas literales) tendrn una propiedad de constructor que apunta al tipo de constructor del Objeto Fundamento para ese objeto.
var o = {};
o.constructor === Object; // true
var a = [];
a.constructor === Array; // true
var n = new Number(3);
n.constructor === Number; // true
El siguiente ejemplo crea un prototipo, Tree, y un objeto de este tipo, theTree. El ejemplo muestra entonces la propiedad constructor para el objeto theTree.
function Tree(name) {
this.name = name;
}
var theTree = new Tree("Redwood");
console.log("theTree.constructor is " + theTree.constructor);
Este ejemplo muestra la siguiente salida:
theTree.constructor is function Tree (name) {
this.name = name;
}
El siguiente ejemplo demuestra como modificar el valor del constructor de objetos genricos. Solo true, 1 y "test" no sern afectados ya que ellos tienen constructores nativos de solo lectura. Este ejemplo demuestra que no siempre es seguro confiar en la propiedad constructor de un objeto.
function Type() {}
var types = [
new Array(),
[],
new Boolean(),
true, // no cambia
new Date(),
new Error(),
new Function(),
function () {},
Math,
new Number(),
1, // no cambia
new Object(),
{},
new RegExp(),
/(?:)/,
new String(),
"test", // no cambia
];
for (var i = 0; i < types.length; i++) {
types[i].constructor = Type;
types[i] = [
types[i].constructor,
types[i] instanceof Type,
types[i].toString(),
];
}
console.log(types.join("\n"));
| Specification |
|---|
| ECMAScript 2027 LanguageSpecification # sec-object.prototype.constructor |
This page was last modified on 23 ene 2024 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/FunctionYour 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 |