循环遍历类的所有对象

时间:2010-07-13 20:04:37

标签: javascript jquery

假设我有一个名为loopObject的类,我通过类似var apple = new loopObject();之类的东西初始化每个对象。无论如何都要循环遍历类的所有对象,以便可以对每个对象执行某些功能一个参数?如果没有直接方法,有没有办法在初始化时将每个新对象放入一个数组?

3 个答案:

答案 0 :(得分:2)

您可以创建一个包含每个实例的数组,如下所示:

function LoopObject() {
    LoopObject.all.push(this);
}
LoopObject.all = [];

然而,它会泄漏内存 - 你的实例永远不会超出范围。

答案 1 :(得分:1)

function loopObject(){
 this.name = 'test'
};
var list = [], x = new loopObject, y = new loopObject;

list.push(x)
list.push(y)

for ( var i = list.length; i--; ) {
    alert( list[i].name )
}

答案 2 :(得分:0)

var allObjects [] = new Array();
function loopObject() {
    ...
    allObjects.push(this);
}

然后,可以根据需要使用allObjects循环遍历allObjects.length的所有元素。