¿Qué es Object.prototype en JavaScript?

Object es una función constructora que se refiere a todos los objetos creados en el documento. Utilizamos Object.prototype para agregar propiedades o métodos a todos los objetos que heredan de Object , es decir, [object Object] . Por ejemplo:

 var obj = {}; // create a new object: [object Object] Object.prototype.properties = { // creating an object whose properties all objects will inherit prop1: "Honda", prop2: "Ford", method: function() { return "All objects have this function now."; } }; console.log(obj.properties.prop1); console.log(obj.properties.prop2); console.log(obj.properties.method()); 

Como puede ver, al agregar métodos y propiedades usando Object.prototype , todos los objetos también los tendrán inherentemente.

.prototype no es exclusivo de Object . Puede usarlo en cualquier constructor de funciones que desee.

 function Human() {} //< constructor function Human.prototype = { job: 'WalMart'; age: 28; info: function() { return "This person works at " + this.job + "and he is " + this.age; }; var joey = new Human() // the 'new' keyword makes Human act as a constructor alert(joey.info()); // This person works WalMart and he is 28 

Si no está familiarizado con .prototype , es posible que no sepa mucho sobre los constructores de funciones. Sin usar .prototype , los objetos que señale al constructor no heredarán las propiedades arbitrarias y los métodos que le proporcione.

Para más información sobre constructores: http://www.javascriptkit.com/jav…

Además, vea la excelente respuesta de Ryan Grovee a ¿Qué es la herencia de prototipos?

Consulte ecma-262 4.2.1.

ECMAScript no utiliza clases como las de C ++, Smalltalk o Java. En cambio, se pueden crear objetos en
de varias formas, incluida una notación literal o constructores que crean objetos y luego ejecutan código
que inicializa todos o parte de ellos asignando valores iniciales a sus propiedades. Cada constructor es una función.
que tiene una propiedad llamada “prototipo” que se utiliza para implementar la herencia basada en prototipos y compartida
propiedades.

Cuando agrega un miembro, datos o función a un prototipo de objeto, todas las instancias de ese tipo obtienen esos miembros.