Buenas.
Acabo de encontrar un comportamiento que me parece extraño en Javascript y que no encuentro una respuesta.
Defino una clase B y una clase C que hereda de B.
Creo una instancia de C llamada c.
Llamo al método constructor desde c y, sin saber por qué, llama al constructor de B.
Aquí el código:
Código Javascript
:
Ver originalfunction B(){
this.b = 2;
console.log("B constructor");
}
B.prototype.fbb = function() { this.b++; }
function C(){
this.c = 3;
console.log("C constructor");
}
C.prototype = Object.create(B.prototype);
C.prototype.fcc = function() { this.c++ }
var c = new C(); // C constructor : OK
console.log(c instanceof B); // ok
console.log(c instanceof C); // ok
c.constructor(); // B constructor : ????
¿Alguna explicación?