Buenas.
Editado: el título habla de Require.js pero lo he obviado y he simplificado el código, pues el problema es inherente al uso de Require.js
El problema está con dos clases TableX y OutputX que heredan de NodeX. Este es el código:
Código Javascript
:
Ver originalfunction NodeX(){};
function OutputX(){}
OutputX.prototype = NodeX.prototype;
OutputX.prototype.foo = function(){
console.log("OutputX.prototype.foo");
}
function TableX(){};
TableX.prototype = NodeX.prototype;
TableX.prototype.foo = function(){
console.log("TableX.prototype.foo");
}
TableX.prototype.bar = function(){
console.log("TableX.prototype.bar");
}
var o = new OutputX;
o.foo();
o.bar();
En principio como OutputX no extiende a la clase TableX, o.foo() no debería devolver "TableX.prototype.foo" por consola y o.bar() debería dar un error. Sin embargo no es este el caso.
¿Que se me está escapando para no entender este comportamiento, a mi ver, tan extraño?
Un saludo y gracias!