这里的第一个问题(我的意思是和以往一样),如果我在错误的位置发帖或找不到已经给出的答案,对不起。
我有2个对象数组。第一个,让我们称之为oldArray有1000个具有属性的对象
{id,姓名,年龄,地址,喜欢的号码,喜欢的数学家}。
另一个,让我们称之为inputArray有20个对象,这些属性是oldArray中对象的子集,例如
{id,年龄,喜欢的号码}。
我需要创建一个updatedArray,将其命名为newArray,其中oldArray中ID不在inputArray中的对象保持不变,但是inputArray中存在ID的对象的属性被覆盖。新的。
我已经将它与fors和ifs一起使用,但是我正在搜索
a)更有效的方式
b)一种“清洁”的方式,例如使用lodash或我不知道的东西:P
c)最好同时满足上述条件
如此预期的结果。
let oldArray = [
{
id:1,
名称:Akis,
年龄:27岁,
地址:米科诺斯岛,
最喜欢的号码:23,
最喜欢的数学家:黎曼
},
{
id:2,
姓名:玛丽,
年龄:41岁,
地址:帕罗斯岛,
最喜欢的数字:10,
最喜欢的数学家:Ramanujan
},
{
id:3,
姓名:索非亚,
年龄:13,
地址:伊萨卡,
最喜欢的号码:4,
最喜欢的数学家:高斯
},
{
id:4,
姓名:安东尼,
年龄:18岁,
地址:Koufonisia,
最喜欢的号码:33,
最喜欢的数学家:Metallica
},
{
id:5,
名称:Yolo,
年龄:99岁,
地址:某个地方,
最喜欢的号码:123,
最喜欢的数学家:欧拉
}
]
///////////////////////////////////////////////// ////////
let inputArray = [
{
id:2,
年龄:23岁,
最喜欢的号码:13
},
{
id:5,
年龄:100岁,
最喜欢的数字:99
}
]
\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\
let newArray = [
{
id:1,
名称:Akis,
年龄:27岁,
地址:米科诺斯岛,
最喜欢的号码:23,
最喜欢的数学家:黎曼
},
{
id:2,
姓名:玛丽,
年龄:23,_________________________________ //!已更改!
地址:帕罗斯岛,
最喜欢的数字:13,____________________ //!CHANGED!
最喜欢的数学家:Ramanujan
},
{
id:3,
姓名:索非亚,
年龄:13,
地址:伊萨卡,
最喜欢的号码:4,
最喜欢的数学家:高斯
},
{
id:4,
姓名:安东尼,
年龄:18岁,
地址:Koufonisia,
最喜欢的号码:33,
最喜欢的数学家:Metallica
},
{
id:5,
名称:Yolo,
年龄:100,_________________________________ //!已更改!
地址:某处
最喜欢的数字:99,_____________________ //!CHANGED!
最喜欢的数学家:欧拉
}
]
PS。我错过了一些报价,但我希望你明白这一点! :P