JavaScript Unique Array

Ammar Ali 12 outubro 2023
  1. Obtenha os valores exclusivos de um array usando a função Set() em JavaScript
  2. Obtenha os valores exclusivos de um array usando a função indexOf() em JavaScript
  3. Obtenha os valores exclusivos de um array usando a função filter() em JavaScript
JavaScript Unique Array

Este tutorial irá discutir como obter os valores exclusivos de um array usando as funções Set(), indexOf() e filter() em JavaScript.

Obtenha os valores exclusivos de um array usando a função Set() em JavaScript

Para obter valores únicos de um array, podemos usar a função Set(), que cria um novo array com valores únicos do array existente. Por exemplo, vamos criar um array com valores duplicados, criar um novo com valores únicos usando a função Set() e mostrar o resultado no console usando a função console.log() em JavaScript. Veja o código abaixo.

var myArray = ['c', 'b', 'c', 2, 'b'];
var uniqueArray = [...new Set(myArray)]
console.log('Original Array = ', myArray);
console.log('Array with unique values = ', uniqueArray);

Resultado:

Original Array =  (5) ["c", "b", "c", 2, "b"]
Array with unique values =  (3) ["c", "b", 2]

Na saída, a nova matriz não contém nenhum valor duplicado.

Obtenha os valores exclusivos de um array usando a função indexOf() em JavaScript

Para obter valores exclusivos de um array, podemos criar nossa própria função usando a função indexOf() e um loop, que criará um novo array com valores exclusivos do array existente. Usaremos o array para mover os elementos para o novo array e a função indexOf() para verificar se um elemento já está presente no novo array ou não.

Se o elemento não estiver na nova matriz, ele será movido para a nova matriz; caso contrário, ele permanecerá. Por exemplo, vamos criar um array com valores duplicados, então criar um novo array com valores únicos usando nossa função e mostrar o resultado no console usando a função console.log() em JavaScript. Veja o código abaixo.

function uArray(array) {
  var out = [];
  for (var i = 0, len = array.length; i < len; i++)
    if (out.indexOf(array[i]) === -1) out.push(array[i]);
  return out;
}
var myArray = ['c', 'b', 'c', 2, 'b'];
var uniqueArray = uArray(myArray);
console.log('Original Array = ', myArray);
console.log('Array with unique values = ', uniqueArray);

Resultado:

Original Array =  (5) ["c", "b", "c", 2, "b"]
Array with unique values =  (3) ["c", "b", 2]

Aqui, a nova matriz não contém nenhum valor duplicado.

Obtenha os valores exclusivos de um array usando a função filter() em JavaScript

Para obter valores únicos de um array, podemos usar a função filter(), que cria um novo array filtrando os valores do array existente dependendo de uma condição particular. A função filter() irá verificar cada valor presente no array original. Se um valor estiver duplicado, a função o removerá; caso contrário, o valor será adicionado ao novo array.

Por exemplo, vamos criar um array com valores duplicados, criar um novo array com valores únicos usando a função filter() e mostrar o resultado no console usando a função console.log() em JavaScript. Veja o código abaixo.

var myArray = ['c', 'b', 'c', 2, 'b'];
var uniqueArray = myArray.filter((val, ind, arr) => arr.indexOf(val) === ind);
console.log('Original Array = ', myArray);
console.log('Array with unique values = ', uniqueArray);

Resultado:

Original Array =  (5) ["c", "b", "c", 2, "b"]
Array with unique values =  (3) ["c", "b", 2]

Como você pode ver aqui, a nova matriz não contém nenhum valor duplicado.

Autor: Ammar Ali
Ammar Ali avatar Ammar Ali avatar

Hello! I am Ammar Ali, a programmer here to learn from experience, people, and docs, and create interesting and useful programming content. I mostly create content about Python, Matlab, and Microcontrollers like Arduino and PIC.

LinkedIn Facebook

Artigo relacionado - JavaScript Array