2015-05-29 121 views
2

是否可以檢查是否至少有一個數組元素包含特定的值,而不使用for循環?或者我正在使用最有效的方式?如何查找數組元素是否包含JavaScript/jQuery中的特定值?

我正在處理大量數據(1000+)。

樣本陣列:

var myarray = [ 
    {id: 0, content: "demo0", group: 1}, 
    {id: 1, content: "demo1", group: 2}, 
    {id: 2, content: "demo2", group: 2}, 
    {id: 2, content: "demo3", group: 4}, 
] 

我要檢查它是否包含與 「基團== 2」 的元素。我的代碼:

var arrayLength = myarray.length; 
var flag = false; 
for (var i = 0; i < arrayLength; i++) { 
    if (myarray[i]["group"] == 2) { 
     flag = true; 
     break; 
    } 
} 
alert(flag); 
+2

每一個實現將使用某種形式的for循環的。但是,您不必手動編寫'低級別'循環。例如,您可以使用'Array.some'。或者來自lodash的東西。 – user2864740

回答

3

您可以使用some

var flag = myarray.some(function(obj){ 
    return obj.group === 2; 
}); 

console.log(flag); // true 
+0

就是這樣。謝謝。 – lupitag

相關問題