logo

Com obtenir tots els valors únics (eliminar duplicats) en una matriu JavaScript?

Aprendrem a obtenir tots els valors únics (eliminar duplicats) en una matriu JavaScript. Donada una matriu amb diversos valors, el nostre objectiu és filtrar qualsevol duplicat i mostrar la matriu resultant a la consola.

obtenir-valors-únics-en-un-javascript

obtenir tots els valors únics (eliminar duplicats) en una matriu JavaScript



Podem obtenir tots els valors únics en una matriu JavaScript de les maneres següents:

fil.destruir

Taula de contingut

Mètode 1: S'utilitza for loop

per bucle El mètode va comprovar cada valor de la matriu original (listArray) amb cada valor de la matriu de sortida (outputArray) on s'eliminen els valors duplicats. Si el valor actual no existeix a la matriu de sortida amb valors únics, afegiu l'element a la matriu de sortida.



Exemple: Aquest exemple genera una matriu única de valors de cadena.

Javascript
// Creating a 3x4 two-dimensional array let Arr = [  'Manish', 'Chandan', 'Piyush',  'Sunil', 'Pankaj', 'Piyush',  'Pankaj', 'Tiny', 'Chandan',  'Manish']; let outputArray = []; // Count variable is used to add the // new unique value only once in the // outputArray. let count = 0; // Start variable is used to set true // if a repeated duplicate value is // encontered in the output array. let start = false; for (let j = 0; j < Arr.length; j++) {  for (let k = 0; k < outputArray.length; k++) {  if (Arr[j] == outputArray[k]) {  start = true;  }  }  count++;  if (count == 1 && start == false) {  outputArray.push(Arr[j]);  }  start = false;  count = 0; } console.log(outputArray);>

Sortida
[ 'Manish', 'Chandan', 'Piyush', 'Sunil', 'Pankaj', 'Tiny' ]>

Mètode 2: utilitzant el mètode Array filter():

La funció arr.filter() s'utilitza per crear una matriu nova a partir d'una matriu existent que consisteix només en aquells elements de la matriu donada que compleixen una condició establerta per la funció argument.

Exemple: En aquest exemple, farem servir la matriu filtre () mètode per eliminar duplicats de la matriu.



Javascript
let Arr = [  'g', 'e', 'e', 'k', 's',   'f', 'o', 'r', 'g', 'e',   'e', 'k', 's' ]; let outputArray = []; function removewithfilter(arr) {  let outputArray = arr.filter(function (v, i, self) {  // It returns the index of the first  // instance of each value  return i == self.indexOf(v);  });  return outputArray; } console.log(removewithfilter(Arr));>

Sortida
[ 'g', 'e', 'k', 's', 'f', 'o', 'r' ]>

Mètode 3: utilitzant el mètode set().

Un conjunt és una col·lecció d'elements únics, és a dir, no es pot repetir cap element. Els conjunts a ES6 estan ordenats: els elements del conjunt es poden iterar en l'ordre d'inserció. El conjunt pot emmagatzemar qualsevol tipus de valor ja sigui primitiu o objectes.

Exemple: En aquest exemple, farem servir el Mètode set(). per eliminar duplicats de la matriu.

Javascript
let Arr = [  'DS', 'Algo', 'OS', 'HTML', 'DS',  'OS', 'Java', 'HTML', 'Algo' ]; let outputArray = []; function removeusingSet(arr) {  let outputArray = Array.from(new Set(arr))  return outputArray } console.log(removeusingSet(Arr));>

Sortida
[ 'DS', 'Algo', 'OS', 'HTML', 'Java' ]>

Mètode 4: utilitzant el mètode reduce().

El mètode reduce(). s'utilitza per reduir els elements de la matriu i combinar-los en una matriu final basada en alguna funció reductora que passeu.

afegint una cadena en java

Exemple: En aquest exemple, veurem l'ús del mètode reduce().

Javascript
let arr = ['apple', 'mango',  'apple', 'orange', 'mango', 'mango'];   function removeDuplicates(arr) {  let unique = arr.reduce(function (acc, curr) {  if (!acc.includes(curr))  acc.push(curr);  return acc;  }, []);  return unique; } console.log(removeDuplicates(arr));>

Sortida
[ 'apple', 'mango', 'orange' ]>

Mètode 5: utilitzant el mètode forEach().

Mitjançant l'ús de mètode forEach(). , podem iterar sobre els elements de la matriu i introduirem a la nova matriu si no existeix a la matriu.

Exemple: En aquest exemple, veurem l'ús del mètode forEach().

Javascript
let arr = ['apple', 'mango',  'apple', 'orange', 'mango', 'mango']; function removeDuplicates(arr) {  let unique = [];  arr.forEach(element =>{ if (!unique.inclou (element)) { unique.push (element);  }});  retorn únic; } console.log(removeDuplicates(arr));>>>  
Sortida
[ 'apple', 'mango', 'orange' ]>

Mètode 6: Utilitzant el mètode indexOf().

El mètode indexOf(). s'utilitza per trobar el primer índex d'ocurrència d'un element de matriu. podem iterar sobre els elements de la matriu, i introduirem a la nova matriu si no existeix a la matriu resultant.

Exemple: En aquest exemple, veurem l'ús del mètode indexOf().

Javascript
let arr = ['apple', 'mango',  'apple', 'orange', 'mango', 'mango']; function removeDuplicates(arr) {  let unique = [];  for (i = 0; i < arr.length; i++) {  if (unique.indexOf(arr[i]) === -1) {  unique.push(arr[i]);  }  }  return unique; } console.log(removeDuplicates(arr));>

Sortida

Mètode 7: Utilitzant la funció Underscore.js _.uniq().

També podem utilitzar una biblioteca de tercers com ara Lodash o Underscore.js per eliminar elements duplicats d'a Matriu de Javascript . El funció _.uniq(). retorna la matriu que no conté elements duplicats.

Exemple: En aquest exemple, utilitzarem la funció _.uniq().

Javascript
const _ = require('underscore'); console.log( _.uniq([1, 2, 3, 4, 5, 4, 3, 2, 1]));>

Sortida:

[ 1, 2, 3, 4, 5 ]>