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 original
function 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!