我想根据对象的唯一属性(即键)从对象数组中提取特定对象。
在下面的代码中,我正在搜索“ arr”中的键为8的元素。
var myElement = arr.filter(function(element) {
return element.key === 8;
});
这是可行的,但是每次运行时,即使找到了正确的元素,它也会遍历数组中的所有元素。例如,如果它在索引4处找到myElement,但是数组中有100个元素,则该片段的运行量将比需要的多25倍。
有没有更有效的方法,还是找到myElement时终止filter()的方法?
我觉得我错过了明显的事情...
最佳答案
for (var i=0; i<arr.length; i++) {
if (arr[i].key === 8) {
console.log('FOUND ITEM AT KEY '+8);
break;
}
}
关于javascript - 更有效的数组搜索,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/27831484/