JS 怎么将两个数组合并,若有重复的数据,则只保留一份重复的数据?

JS怎么将两个数组合并,若两个数组有重复一样的数据,则只保留一份重复的数据? 网上搜没看到答案,自己写的也不对, 水平不够求助下

阅读 6.7k
6 个回答
const array1 = [2, 3, 4];
const array2 = [3, 4, 5];

const newArray = new Set([...array1, ...array2]);
const newArray1 = new Set(array1.concat(array2));

console.log(Array.from(newArray))
console.log(Array.from(newArray1))

输出结果:

[ 2, 3, 4, 5 ]
[ 2, 3, 4, 5 ]

合并+数组去重

let a1 = [1,2,3]
let a2 = [2,3,4]

// 合并
let newArr = [...a1,...a2]

// 去重
newArr = Array.from(new Set(a))
var a = [1, 2, 3, 4, 5, 'str', 'haha'];
var b = [8, 6, 4, 2, 1, 's', 'hahahah', 'str'];
var c = [].concat(a, b);
var rs = [];
var json = {};
for (let i = 0, len = c.length; i < len; i++) {
    if (json[c[i]] !== 1) {
        rs.push(c[i]);
        json[c[i]] = 1;
    }
}
console.log(rs)
        const arr1 = ['a','b','c'];
        const arr2 = ['1','2','b','3','c'];
        const arr3 = arr1.concat(arr2);

        const arr4 = new Set(arr3);
        console.log(Array.from(arr4));        //["a", "b", "c", "1", "2", "3"]
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题