Ver Mensaje Individual
  #3 (permalink)  
Antiguo 13/08/2013, 04:48
Avatar de ipraetoriux
ipraetoriux
 
Fecha de Ingreso: abril-2010
Ubicación: ipraetoriux.com
Mensajes: 1.125
Antigüedad: 14 años, 7 meses
Puntos: 155
Respuesta: Definir todas las propiedades directamente dentro del prototype

...el Prototype Pattern es bien empleado cuando todas las instancias de un objeto van a compartir una propiedad que tenga el mismo valor...de esta forma cuando creas instancias de un objeto, dicha propiedad existe solamente en el prototype y no en la instancia...

Código Javascript:
Ver original
  1. function Animal(){
  2. }
  3. Animal.prototype.name = 'perro';
  4.  
  5. var perro1 = new Animal();
  6. var perro 2 = new Animal();
  7.  
  8. console.log(perro1.hasOwnProperty("name")); // retornará false

...para que dicha propiedad exista en la instancia deberias sobre escribir la propiedad del prototype

Código Javascript:
Ver original
  1. perro1.name = "gato";
  2. console.log(perro1.hasOwnProperty("name")); // retornará true


...pero de esta forma se perdería el motivo o fin de usar el Prototype Pattern

...por ello la forma mas común de definir objetos es usando el Constructor Pattern y el Prototype Pattern. Por medio del Constructor Pattern defines las propiedades de instancia, y por medio del Prototype Pattern defines los métodos y propiedades compartidas