2015-05-26 71 views
0

我使用此代碼來過濾數組:Lodash過濾返回對象,而不是數組長度1

var filteredValues = _.filter(arrayOfObjects, function(obj) { 
    return obj.id === id; 
}); 

我是這樣想獲取的第一個結果:

console.log('id', filteredValues[0].id); 

我知道如何使用鏈接,但我忘記了我可以使用哪種lodash函數,以便找到的第一個對象將被分配到filteredValues

我可以使用下面的代碼,但它看起來太簡單了。我想要一個完整的lodash解決方案。

var cleanedfilteredValues = {}; 
cleanedfilteredValues = filteredValues[0]; 
+4

['_.find'](HTTPS ://lodash.com/docs#find) – Amadan

+0

感謝Amadan! :) – devwannabe

回答

2

當你使用全等運算符來比較收集項目的屬性值,你可以使用傳遞一個對象來find(),使代碼更小:

var filteredValues = _.find(arrayOfObjects, { id: id }); 
0

隨着Amadan的幫助,這是我現在使用

var filteredValues = _.find(arrayOfObjects, function(obj) { 
    return obj.id === id; 
}); 

感謝代碼!

相關問題