所以有一个复杂的对象A
{
"AId": 34,
"children": [
{
"id": 1,
"name": "name1",
"prop": "Hello"
},
{
"id": 2,
"name": "name2",
"prop": "world"
}
]
}
并且有复杂的对象B
[
{
"id": 1,
"name": "name1"
},
{
"id": 2,
"name": "name2"
}
]
我想仅基于id删除对象B子对象中对象B中的所有元素。因此,例如,对象A的子对象具有ID 1和2,它们也在对象B中,因此需要在对象B中删除那些ID 1和2,最好的方法是什么?希望我解释得很好
答案 0 :(得分:0)
尝试使用foreach
oB= [
{
"id": 1,
"name": "name1"
},
{
"id": 2,
"name": "name2"
}
]
oA={
"AId": 34,
"children": [
{
"id": 1,
"name": "name1",
"prop": "Hello"
},
{
"id": 2,
"name": "name2",
"prop": "world"
}
]
}
oA.children.forEach(x=>{
oB.forEach(y=>{
if(x.id==y.id) oB.shift()
})
})
console.log(oB)
答案 1 :(得分:0)
A.children.forEach(x=>{
this.B.forEach(y=>{
if(x.id==y.id)
{
this.A.children = this.A.children.filter(s => s.id !== x.id);
}
})
});