📌  相关文章
📜  结合 2 个“数组与对象”并删除重复的对象 javascript (1)

📅  最后修改于: 2023-12-03 15:11:38.513000             🧑  作者: Mango

JS代码:结合 2 个“数组与对象”并删除重复的对象

在开发过程中,我们常常需要将两个数组或对象进行合并,同时也需要去除合并后的对象中的重复项。以下是在JavaScript中合并两个数组或对象并删除重复项的方法:

合并两个数组

可以使用concat()方法将两个数组合并成一个数组。例如,将数组a和数组b合并成数组c:

let a = [1, 2, 3];
let b = [4, 5, 6];
let c = a.concat(b);
console.log(c); // [1, 2, 3, 4, 5, 6]
合并两个对象

可以使用Object.assign()方法将两个对象合并成一个对象。例如,将对象obj1和对象obj2合并成对象obj3:

let obj1 = {a: 1};
let obj2 = {b: 2};
let obj3 = Object.assign(obj1, obj2);
console.log(obj3); // {a: 1, b: 2}
删除重复对象

可以使用filter()方法和indexOf()方法来删除重复对象。例如,将数组中的重复对象删除:

let arr = [{a: 1}, {a: 2}, {a: 1}];
let newArr = arr.filter((item, index) => {
    return arr.indexOf(item) === index;
});
console.log(newArr); // [{a: 1}, {a: 2}]

同样,也可以用for...inhasOwnProperty()方法来删除重复对象:

let obj = {a: 1, b: 2, c: 1};
let newObj = {};
for (let key in obj) {
    if (obj.hasOwnProperty(key) && !newObj.hasOwnProperty(obj[key])) {
        newObj[key] = obj[key];
    }
}
console.log(newObj); // {a: 1, b: 2}

以上就是合并两个数组或对象并删除重复项的方法,希望对您有所帮助。