Movatterモバイル変換


[0]ホーム

URL:


MDN Web Docs

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

Object.prototype.constructor

BaselineWidely available

Resumen

Retorna una referencia a la función delObject que creó el objeto de la instancia. Note que el valor de esta propiedad es una referencia a la función misma, no a un string conteniendo el nombre de la función. El valor es sólo de lectura para valores primitivos tales como 1, true y 'test'.

Descripción

Todos los objetos tienen una propiedadconstructor. Los objetos creados sin explicitar el uso de una función (como son los objetos y las cadenas literales) tendrán una propiedad deconstructor que apunta al tipo de constructor del Objeto Fundamento para ese objeto.

js
var o = {};o.constructor === Object; // truevar a = [];a.constructor === Array; // truevar n = new Number(3);n.constructor === Number; // true

Ejemplos

Ejemplo: Mostrando el constructor de un objeto

El siguiente ejemplo crea un prototipo,Tree, y un objeto de este tipo,theTree. El ejemplo muestra entonces la propiedadconstructor para el objetotheTree.

js
function Tree(name) {  this.name = name;}var theTree = new Tree("Redwood");console.log("theTree.constructor is " + theTree.constructor);

Este ejemplo muestra la siguiente salida:

js
theTree.constructor is function Tree (name) {    this.name = name;}

Ejemplo: Cambiando el constructor de un objeto

El siguiente ejemplo demuestra como modificar el valor del constructor de objetos genéricos. Solotrue,1 y"test" no serán 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.

js
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"));

Especificaciones

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

Compatibilidad con navegadores

Help improve MDN

Learn how to contribute.

This page was last modified on byMDN contributors.


[8]ページ先頭

©2009-2025 Movatter.jp