gpt4 book ai didi

javascript - 无法删除重复项

转载 作者:行者123 更新时间:2023-11-30 09:16:58 26 4
gpt4 key购买 nike

我有这两个数组:

原创

[
{ id: "1"},
{ id: "2"},
{ id: "3"}
]

[
{ id: "1"},
{ id: "7"},
{ id: "9"}
]

我试图从 original 中删除所有在 old 中可用的项目,所以我做了:

original = original.filter(function(el) {
return old.indexOf(el) < 0;
}.bind(this));

但是我得到了同样的元素,我做错了什么?这是代码片段。

let original = [{
id: "1"
},
{
id: "2"
},
{
id: "3"
}
];

let old = [{
id: "1"
},
{
id: "7"
},
{
id: "9"
}
];
console.log(original);

original = original.filter(function(el) {
return old.indexOf(el) < 0;
}.bind(this));

console.log(original);

最佳答案

indexOf 无法比较对象的内容。

您需要检查id

var original = [
{ id: "1"},
{ id: "2"},
{ id: "3"}
],
old = [
{ id: "1"},
{ id: "7"},
{ id: "9"}
];


original = original.filter(function(el) {
return old.findIndex(item => item.id === el.id) < 0;
});

console.log(original);

关于javascript - 无法删除重复项,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54420852/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com