Javascript 对象数组上的过滤器性能

Javascript 对象数组上的过滤器性能,javascript,performance,object,optimization,filter,Javascript,Performance,Object,Optimization,Filter,如果我有一个名为filteredList的对象数组和一个函数,例如: function buildList(filteredList, p1, p2, p3) { var resultList = []; for (var i =0; i < filteredList.length; i++) { if (filteredList[i].type === 'global' && filteredList[i].p1 === p1 &a

如果我有一个名为
filteredList
的对象数组和一个函数,例如:

function    buildList(filteredList, p1, p2, p3) {
    var resultList = [];

    for (var i =0; i < filteredList.length; i++) {
        if (filteredList[i].type === 'global' && filteredList[i].p1 === p1 && filteredList[i].p2 === p2 && filteredList[i].p3 === p3)
            resultList.push(filteredList[i]);
    }

    return resultList;
}
函数构建列表(filteredList,p1,p2,p3){
var resultList=[];
对于(变量i=0;i
如果不是像我那样在数组中循环,而是执行类似于:
filteredList.filter(rebuildList)

重建列表
是检查与
构建列表

它也会这样做吗?(通过每个元素循环)

你能想出一个更优化、更有效的方法吗?在我的项目中,我多次调用像
buildList
这样的函数,它占用了大量的时间。

您可以使用该方法。示例即将发布


关于性能,您应该在这里阅读:

这就是我想做的,但我的问题是性能会产生什么影响?它会做同样的事情:通过每个元素循环,还是做一些更有效的事情?如果是的话,什么?更新的答案。@ElloneI我没有真正了解这个小提琴中的seek和Object方法是什么,它们似乎更有效,但我不知道如何将它们应用到我的案例中。seeek方法似乎使用了
indexOf
,但在我的例子中,我有对象,所以除非我使用
JSON,否则我无法执行。将其字符串化,可能会花费更多的时间,所以这篇文章看起来不可信:什么是
filteredList
?它是一个
数组
对象
。这是一个目标,然后性能将被禁食。