JavaScript Unique Array
-
Obtenha os valores exclusivos de um array usando a função
Set()
em JavaScript -
Obtenha os valores exclusivos de um array usando a função
indexOf()
em JavaScript -
Obtenha os valores exclusivos de um array usando a função
filter()
em JavaScript
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.