JavaScript 合并两个数组并删除重复项程序

要理解此示例,您应了解以下 JavaScript 编程 主题


示例 1:使用 concat() 和 for 循环

// program to merge and remove duplicate value from an array

function getUniqueAfterMerge(arr1, arr2){

    // merge two arrays
    let arr = arr1.concat(arr2);
    let uniqueArr = [];

    // loop through array
    for(let i of arr) {
        if(uniqueArr.indexOf(i) === -1) {
            uniqueArr.push(i);
        }
    }
    console.log(uniqueArr);
}

const array1 = [1, 2, 3];
const array2 = [2, 3, 5]

// calling the function
// passing array argument
getUniqueAfterMerge(array1, array2);

输出

[1, 2, 3, 5]

在上面的程序中,两个数组元素被合并,并移除了重复的元素。

这里,

  • 使用 concat() 方法合并两个数组。
  • 使用 for...of 循环遍历 arr 中的所有元素。
  • 如果元素不在数组中,indexOf() 方法将返回 -1

因此,在每次迭代中,如果元素等于 -1,则使用 push() 方法将该元素添加到 uniqueArr 数组中。


示例 2:使用 Spread 语法和 Set

// program to merge and remove duplicate value from an array

function getUniqueAfterMerge(arr1, arr2){

    // merge two arrays
    let arr = [...arr1, ...arr2];

    // removing duplicate
    let uniqueArr = [...new Set(arr)];

    console.log(uniqueArr);
}

const array1 = [1, 2, 3];
const array2 = [2, 3, 5]

// calling the function
getUniqueAfterMerge(array1, array2);

输出

[1, 2, 3, 5]

在上面的程序中,两个数组被合并,并使用 Set 从数组中删除重复项。

Set 是唯一值的集合。

这里,

  • 使用 spread 语法 ... 合并两个数组元素。
  • 将数组转换为 Set,所有重复的元素都会被自动删除。
  • 然后使用 spread 语法 ... 将 Set 中的所有元素包含回数组中。

另请阅读

你觉得这篇文章有帮助吗?

我们的高级学习平台,凭借十多年的经验和数千条反馈创建。

以前所未有的方式学习和提高您的编程技能。

试用 Programiz PRO
  • 交互式课程
  • 证书
  • AI 帮助
  • 2000+ 挑战