Neste exemplo, você aprenderá a escrever um programa JavaScript que mesclará dois arrays e removerá itens duplicados de um array.
Para entender este exemplo, você deve ter conhecimento dos seguintes tópicos de programação JavaScript:
- JavaScript Array concat ()
- Conjunto de JavaScript e WeakSet
- Operador JavaScript Spread
Exemplo 1: Usando concat () e for Loop
// 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);
Resultado
(1, 2, 3, 5)
No programa acima, os dois elementos da matriz são mesclados e os elementos duplicados são removidos.
Aqui,
- As duas matrizes são mescladas usando o
concat()
método. - O
for… of
loop é usado para percorrer todos os elementos de arr. - O
indexOf()
método retorna -1 se o elemento não estiver na matriz.
Portanto, durante cada iteração, se o elemento for igual a -1 , o elemento será adicionado ao array uniqueArr usando o push()
método.
Exemplo 2: Usando Spread Syntax and 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);
Resultado
(1, 2, 3, 5)
No programa acima, dois arrays são mesclados e Set
usados para remover itens duplicados de um array.
O Set
é uma coleção de valores únicos.
Aqui,
- Dois elementos da matriz são mesclados usando a sintaxe de propagação
…
- A matriz é convertida em
Set
e todos os elementos duplicados são removidos automaticamente. - A sintaxe de propagação
…
é então usada para incluir todos os elementos do conjunto de volta para um array.