Ver Mensaje Individual
  #3 (permalink)  
Antiguo 01/12/2012, 10:57
Avatar de Gustavo72
Gustavo72
 
Fecha de Ingreso: abril-2008
Ubicación: -32.956045,-60.661355
Mensajes: 197
Antigüedad: 16 años, 1 mes
Puntos: 9
Respuesta: Problema al usar prototype para herencia

Muchísimas gracias Panino!!!
Resolví el tema de esta manera:

Código Javascript:
Ver original
  1. function a(vA) {
  2.     this.vA=vA;
  3.     alert('a');
  4.     this.getA=function() {
  5.         alert(this.vA);
  6.     };
  7. }
  8. function b(vA, vB) {
  9.     a.call(this, vA);
  10.     this.vB=vB;
  11.     alert('b');
  12.     this.getB=function() {
  13.         alert(this.vB);
  14.     };
  15. }
  16. b.prototype.a=a;
  17.  
  18. alert('fin definición');
  19.  
  20. var x=new b(3, 7);
  21. x.getA();
  22. x.getB();

Según mi visión la manera correcta de extender la definición de un objeto sería:
b.prototype.a=a;

Y no:
b.prototype=new a();
Como se explica en muchos tutoriales.

Hecho de esta manera no se ejecuta ningún alert durante la definición (es decir no se ejecuta ninguna constructora), el objeto b contiene todos los métodos y propiedades del objeto a y las constructoras sólo se ejecutan al instanciar el objeto.

Una vez más muchísimas gracias por la ayuda!
__________________
Saludos.

Gustavo