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 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 del bucle for
- Mètode 2: utilitzant el mètode Array filter():
- Mètode 3: utilitzant el mètode set().
- Mètode 4: utilitzant el mètode reduce().
- Mètode 5: utilitzant el mètode forEach().
- Mètode 6: utilitzant el mètode indexOf().
- Mètode 7: Ús de la funció Underscore.js _.uniq().
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 ]>