我有一个这样的数组:
var colors = [
{
"name": "red",
"ids":[
{
"id": 1
}
]
},
{
"name": "blue",
"ids":[
{
"id": 5
}
]
}
]
我基本上想要找到id中第一个id等于某个东西的对象。
_.findWhere(colors, {
"ids.0.id": 1
})
这是最好的方法吗?
var color = _.chain(colors)
.map(function(color){
color.id = color.ids[0].id
return color
})
.findWhere({
"id": 1
})
.value()
console.log(color)
答案 0 :(得分:1)
_.findWhere
只是_.find
的便利包装器,因此如果findWhere
并不能满足您的需求,请直接转到find
并手动完成:
var color = _(colors).find(function(color) {
return color.ids[0].id === 1;
});