以下是一个使用 JavaScript 比较两个对象数组并更新主数组中的元素的示例代码:
// 主数组
var mainArray = [
{ id: 1, name: "John", age: 30 },
{ id: 2, name: "Jane", age: 25 },
{ id: 3, name: "Bob", age: 40 }
];
// 比较的数组
var compareArray = [
{ id: 1, name: "John Doe", age: 35 },
{ id: 2, name: "Jane Smith", age: 25 },
{ id: 4, name: "Alice", age: 35 }
];
// 遍历主数组
mainArray.forEach(function(item) {
// 在比较数组中查找与当前主数组元素相同的对象
var compareItem = compareArray.find(function(compareItem) {
return compareItem.id === item.id;
});
// 如果找到相同的对象,则更新主数组中的元素
if (compareItem) {
item.name = compareItem.name;
item.age = compareItem.age;
}
});
console.log(mainArray);
在这个示例中,我们使用 forEach
遍历主数组,并使用 find
方法在比较数组中查找具有相同 id
的对象。如果找到相同的对象,则更新主数组中的元素。最后,我们打印更新后的主数组。
希望这个示例能够解决您的问题。