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.
- ¿Qué marco de JavaScript será más adecuado para una gran aplicación web escrita en C?
- ¿Cuáles son algunos buenos tutoriales y recursos de Node.js que no usan marcos adicionales?
- ¿Qué se debe hacer para crear un sitio web?
- ¿Cuánto AngularJS debe saber para comenzar a construir una aplicación Django-AngularJS?
- ¿Cuál es el mejor software para usar para operar un sitio web privado de ropa de ventas flash?
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?