2つの配列をマージして重複アイテムを削除する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]

上記のプログラムでは、2つの配列要素がマージされ、重複する要素が削除されます。

ここに、

  • 2つの配列は、 concat() 方法。
  • ザ・ for...of loopは、のすべての要素をループするために使用されます arr
  • ザ・ indexOf() メソッドは -1 要素が配列にない場合。

したがって、各反復中に、要素が等しい場合 -1、要素がに追加されます uniqueArr を使用した配列 push() 方法。


例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);
}

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

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

出力

[1, 2, 3, 5]

上記のプログラムでは、2つの配列がマージされて Set 配列から重複アイテムを削除するために使用されます。

ザ・ Set 一意の値のコレクションです。

ここに、

  • スプレッド構文を使用して、2つの配列要素がマージされます ...
  • 配列はに変換されます Set 重複する要素はすべて自動的に削除されます。
  • スプレッド構文 ... 次に、セットのすべての要素を配列に戻すために使用されます。



Hope this helps!

Source link