3 回答
TA贡献1815条经验 获得超13个赞
如果我理解你的问题,你可以创建一个函数,用于Array.prototype.find返回回调函数返回的数组中的第一个元素true- 在这种情况下,回调可以包含一个 for 循环,当它能够匹配id你时返回 true可以作为函数的另一个参数传入。例如:
const list = [{
name: "Bob",
items: [{
id: 1,
color: "blue"
}, {
id: 2,
color: "green"
}]
},
{
name: "Kate",
items: [{
id: 3,
color: "yellow"
}, {
id: 4,
color: "pink"
}]
},
{
name: "Fred",
items: [{
id: 5,
color: "purple"
}]
}
];
const filterList = (arr, id) => {
return arr.find(el => {
for (let i = 0; i < el.items.length; i += 1) {
if (el.items[i].id === id) {
return true;
}
}
})
};
console.log(filterList(list, 3))
添加回答
举报