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

📅  最后修改于: 2020-09-27 05:17:10             🧑  作者: Mango

在此示例中,您将学习编写一个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);
}

let array1 = [1, 2, 3];
let 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:使用扩展语法和设置
// 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);
}

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

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

输出

[1, 2, 3, 5]

在上面的程序中,两个数组合并在一起,并且Set用于从数组中删除重复项。

Set是唯一值的集合。

这里,

  • 使用传播语法将两个数组元素合并在一起...
  • 数组将转换为Set ,所有重复的元素将被自动删除。
  • 然后,使用传播语法...将集合中的所有元素包括回数组。