在Javascript / OOJS中进行子类化

时间:2011-03-06 09:11:02

标签: javascript prototype class-design

我有一个有多个实例的“A”类。我有一个类“B”,每个类“A”的实例有多个实例。类“B”不需要特殊的方法,具体取决于其父实例,但它确实需要能够触发特定影响其父实例的方法。我如何构建这种关系?

要清楚,我不是在描述“Animal - > Human”(一个子集)。我正在描述“人类 - >工具”,其中父项具有许多实例,并且这些实例应该可以访问仅影响其所有权父实例的方法。

1 个答案:

答案 0 :(得分:2)

var TypeA = function() { };
TypeA.prototype.doSomething = function() {/*...*/};

var TypeB = function(parent) { this._parent = parent; }
TypeB.prototype.doSomethingToParent = function() { this._parent.doSomething(); }

当您实例化B时,请始终传入当前的A.

如果我理解你的问题?