在 JavaScript 中,比较和映射缺失的数组对象值可以通过以下步骤实现:
定义两个数组,一个表示原始数组,一个表示新数组。
遍历原始数组中的每个对象,并针对每个对象的每个键检查新数组中是否存在相同的键值对。
如果新数组中存在相同的键值对,则将原始数组中的对象与新数组中的相应对象进行比较,以确定哪些键值对在新数组中缺失。
如果原始数组中的对象中存在键值对在新数组中缺失,则将这些键值对添加到新数组中对应对象的属性中。
下面是一个使用 JavaScript 实现上述步骤的示例代码:
// Define original and new arrays
const originalArray = [
{id: 1, name: "John", age: 25},
{id: 2, name: "Jane", age: 30},
{id: 3, name: "Bob", age: 35}
];
const newArray = [
{id: 1, name: "John", age: 25},
{id: 2, name: "Jane", age: 30},
{id: 3, name: "Bob", age: 35},
{id: 4, name: "Mary", age: 28}
];
// Map and compare missing object values
originalArray.forEach((obj1) => {
const obj2 = newArray.find((obj) => obj.id === obj1.id);
if (obj2) {
Object.keys(obj1).forEach((key) => {
if (obj2[key] === undefined) {
obj2[key] = obj1[key];
}
});
}
});
console.log(newArray);
// Output:
// [
// {id: 1, name: "John", age: 25},
// {id: 2, name: "Jane", age: 30},
// {id: 3, name: "Bob", age: 35},
// {id: 4, name: "Mary", age: 28}
// ]
在上面的代码中,我们首先定义了原始数组 originalArray
和新数组 newArray
。然后我们使用 forEach()
方法遍历原始数组中的每个对象,并使用 find()
方法在新数组中找到相同的对象。如果新数组中
下一篇:比较和找到缺失的结果