【发布时间】:2021-11-30 16:11:15
【问题描述】:
我有一个名为dishes 的嵌套对象数组,其中有唯一的ID。如果id 存在于foodItems 中的dishes 中,我想查找数组的索引,然后将其从foodItems 中删除
const dishes = [{
cuisine: 'Chinese',
foodItems: [{
id: '1',
dishName: 'Chicken noodles',
price: '6.00 USD'
},
{
id: '2',
dishName: 'Fried rice',
price: '5.00 USD'
},
{
id: '3',
dishName: 'Dumplings',
price: '2.00 USD'
}
],
},
{
cuisine: 'Indian',
foodItems: [{
id: '4',
dishName: 'Tikka masala',
price: '10.00 USD'
},
{
id: '5',
dishName: 'Naan Bread',
price: '2.00 USD'
},
{
id: '6',
dishName: 'Dal Fry',
price: '4.00 USD'
}
],
}
];
这是我尝试过的(这不起作用并在index 中返回undefined):
let removeId = (id) => {
let index = dishes.forEach(dish => dish.foodItems.findIndex(item => item.id === id)); // returns undefined
if (index !== -1) {
dishes.forEach(dish=> dish.foodItems.splice(index, 1)); // remove obj from foodItems array
return true;
} else {
return false;
}
}
【问题讨论】:
标签: javascript arrays json object javascript-objects