Lodash 过滤到 return 对象而不是长度为 1 的数组
Lodash filtering to return object rather than array with 1 length
我正在使用此代码过滤数组:
var filteredValues = _.filter(arrayOfObjects, function(obj) {
return obj.id === id;
});
这是我尝试获得第一个结果的方式:
console.log('id', filteredValues[0].id);
我知道如何使用链接,但我忘记了我可以使用哪个 lodash 函数以便将找到的第一个对象分配给 filteredValues
。
我可以使用下面的代码,但它看起来太初级了。我想要一个完整的 lodash 解决方案。
var cleanedfilteredValues = {};
cleanedfilteredValues = filteredValues[0];
在 Amadan 的帮助下,这是我现在使用的代码
var filteredValues = _.find(arrayOfObjects, function(obj) {
return obj.id === id;
});
谢谢!
当您使用严格的相等运算符比较集合项 属性 值时,您可以使用传递一个对象给 find()
,使您的代码更小:
var filteredValues = _.find(arrayOfObjects, { id: id });
我正在使用此代码过滤数组:
var filteredValues = _.filter(arrayOfObjects, function(obj) {
return obj.id === id;
});
这是我尝试获得第一个结果的方式:
console.log('id', filteredValues[0].id);
我知道如何使用链接,但我忘记了我可以使用哪个 lodash 函数以便将找到的第一个对象分配给 filteredValues
。
我可以使用下面的代码,但它看起来太初级了。我想要一个完整的 lodash 解决方案。
var cleanedfilteredValues = {};
cleanedfilteredValues = filteredValues[0];
在 Amadan 的帮助下,这是我现在使用的代码
var filteredValues = _.find(arrayOfObjects, function(obj) {
return obj.id === id;
});
谢谢!
当您使用严格的相等运算符比较集合项 属性 值时,您可以使用传递一个对象给 find()
,使您的代码更小:
var filteredValues = _.find(arrayOfObjects, { id: id });