我想更新(替换)我的数组中的对象与另一个数组中的对象。每个对象具有相同的结构。例如JavaScript - 合并两个对象数组并根据属性值去重复
var origArr = [
{name: 'Trump', isRunning: true},
{name: 'Cruz', isRunning: true},
{name: 'Kasich', isRunning: true}
];
var updatingArr = [
{name: 'Cruz', isRunning: false},
{name: 'Kasich', isRunning: false}
];
// desired result:
NEWArr = [
{name: 'Trump', isRunning: true},
{name: 'Cruz', isRunning: false},
{name: 'Kasich', isRunning: false}
];
我试过CONCAT()&下划线的_.uniq
功能,但它总是转储新对象&回报,从本质上讲,原来的阵列。
有没有办法用updatingArr
中的对象覆盖(替换)origArr
- 匹配name
属性?
这就是你是什么意思? https://jsfiddle.net/4p98w3su/不知道我明白了这个问题。 – spaceman
这里所有的好答案;我喜欢你最好的,使用拼接。如果您想将其转换为答案,我会将其标记为已接受。谢谢。 –
我把它作为答案,我认为它也比涉及map&reduce的方法更快。在一段时间内运行数百万次后,我的速度提高了两倍。 – spaceman