我有一个对象数组,例如:
types: [
{
id: 1,
name: "Hello"
},
{
id: 2,
name: "World"
},
{
id: 3,
name: "Jon Doe"
}
]
我也有一个像这样的简单数组:
selected_types = [1, 2]
期望的结果应该过滤"types" 数组并排除所有存在于"selected_types" 数组中的id,如下所示:
final_types: [
{
id: 3,
name: "Jon Doe"
}
]
我完全不知道如何实现这一点,但下面是我的尝试:
this.types.filter(obj => {
for (let i = 0; i < this.selected_types.length; i++) {
if (obj.id !== selected_types[i]) {
final_types.push(attribute);
}
}
});
最佳答案
只需使用 this.types.filter(({id}) => !this.selected_types.includes(id))
:
let types = [{
id: 1,
name: "Hello"
},
{
id: 2,
name: "World"
},
{
id: 3,
name: "Jon Doe"
}
]
let selected_types = [1, 2];
let resArr = types.filter(({id}) => !selected_types.includes(id));
console.log(resArr);
关于javascript - Vue JS 如何根据数组值删除对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58113102/