比较数组JavaScript中的对象

时间:2015-03-03 02:12:23

标签: javascript arrays object

我有一个包含对象的数组。说:

[{id: 0, fight: true}, {id: 1, fight: false}, {id: 2, fight: true}, {id: 3, fight: false}, {id: 4, fight: true}, {id: 5, fight: false}, {id: 6, fight: false}, {id: 7, fight: false}]

我想在数组中获取具有相同值的每两个对象(例如object.fight)。我想将这些对象传递给一个函数,我可以用它们做其他事情。我想确保一旦比较了数组的一个元素,就不再对它进行比较了。在这种情况下,我会将第一个和第三个对象传递给我的函数。我怎么能这样做?

1 个答案:

答案 0 :(得分:1)

我认为你只需要嵌套的for循环:

for (var i = 0; i < array.length; i++) {
    for (var j = i+1; j < array.length; j++) {
        func(array[i], array[j]);
    }
}

i+1处启动内部循环会阻止以不同的顺序调用具有相同元素对的函数。