好的,假设我有一个像这样的构造函数:
var Base = function() {};
Base.prototype.shmoo = function() { this.foo="shmoo"; }
如何创建Base
独立于它并且彼此独立扩展的其他构造函数?
换句话说,扩展派生构造函数的功能仅影响其对象,而不会影响其他对象,也Base
不会影响另一个派生对象。
我试过了
Extender = function() {};
Extender.prototype = Base.prototype;
Extender.prototype.moo = function() { this.moo="boo"; };
但这当然会在任何地方生效。
我应该模拟类层次结构吗?我试图远离这种模式。