1

在javascript中,我想实现以下目标:

A 类(数组)-> B 类(EntityContainer)-> C 类(EntityList)

在代码中:

function EntityContainer() {
    ...
}

EntityContainer.prototype = new Array;
EntityContainer.prototype.constructor = EntityContainer;
EntityContainer.prototype.parent = Array.prototype

function EntityList() {
    ...
}

EntityList.prototype = new EntityContainer;
EntityList.prototype.constructor = EntityList;
EntityList.prototype.parent = EntityContainer.prototype

当然,继承的东西可以封装在“inheritsFrom”函数中。

在迭代所有元素(使用 this.length)时,这是实现我可以在 EntityList 中调用“this[i]”的正确方法吗?

你有什么可以在这里做得更好的吗?

多谢你们!

4

1 回答 1

0

您想做您所描述的事情的唯一原因是使用instanceof运算符进行类型检查。如果不需要,最好使用组合,并将数组对象作为实例变量。访问器[]可以忽略不计,可以用get().

于 2012-06-22T10:49:05.947 回答