Vi skal lære hvordan du får alle unike verdier (fjern duplikater) i en JavaScript-array. Gitt en matrise med ulike verdier, er målet vårt å filtrere ut eventuelle duplikater og vise den resulterende matrisen i konsollen.

få alle unike verdier (fjern duplikater) i en JavaScript-matrise
Vi kan få alle unike verdier i en JavaScript-matrise på følgende måter:
hvordan blokkere YouTube-annonser på Android
Innholdsfortegnelse
- Metode 1: Bruk for loop
- Metode 2: Bruk av Array filter()-metoden:
- Metode 3: Bruke set()-metoden
- Metode 4: Bruke redusere()-metoden
- Metode 5: Bruk forEach()-metoden
- Metode 6: Bruke indexOf()-metoden
- Metode 7: Bruke Underscore.js _.uniq()-funksjonen
Metode 1: Brukes for loop
for løkke metoden sjekket hver verdi av den opprinnelige matrisen (listArray) med hver verdi av utdatamatrisen (outputArray) der de dupliserte verdiene er fjernet. Hvis gjeldende verdi ikke eksisterer i utmatrisen med unike verdier, legger du elementet til utmatrisen.
Eksempel: Dette eksemplet genererer et unikt utvalg av strengverdier.
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);> Produksjon
[ 'Manish', 'Chandan', 'Piyush', 'Sunil', 'Pankaj', 'Tiny' ]>
Metode 2: Bruk av Array filter()-metoden:
Funksjonen arr.filter() brukes til å lage en ny matrise fra en eksisterende matrise som kun består av de elementene fra den gitte matrisen som tilfredsstiller en betingelse satt av argumentfunksjonen.
Eksempel: I dette eksemplet skal vi bruke matrisen filter() metode for å fjerne duplikater fra matrisen.
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));> Produksjon
[ 'g', 'e', 'k', 's', 'f', 'o', 'r' ]>
Metode 3: Bruke set()-metoden
Et sett er en samling av elementer som er unike, det vil si at ingen elementer kan gjentas. Sett i ES6 er bestilt: elementer i settet kan itereres i innsettingsrekkefølgen. Settet kan lagre alle typer verdier, enten primitiv eller objekter.
Eksempel: I dette eksemplet vil vi bruke set() Metode for å fjerne duplikater fra matrisen.
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));> Produksjon
[ 'DS', 'Algo', 'OS', 'HTML', 'Java' ]>
Metode 4: Bruke redusere()-metoden
De redusere() metoden brukes til å redusere elementene i arrayen og kombinere dem til en endelig array basert på en eller annen reduseringsfunksjon som du passerer.
npm cache tøm
Eksempel: I dette eksemplet vil vi se bruken av metoden 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));> Produksjon
[ 'apple', 'mango', 'orange' ]>
Metode 5: Bruk forEach()-metoden
Ved å bruke forEach()-metoden , kan vi iterere over elementene i matrisen, og vi vil presse inn i den nye matrisen hvis den ikke eksisterer i matrisen.
Eksempel: I dette eksemplet vil vi se bruken av forEach()-metoden.
Javascript let arr = ['apple', 'mango', 'apple', 'orange', 'mango', 'mango']; function removeDuplicates(arr) { let unique = []; arr.forEach(element =>{ if (!unique.includes(element)) { unique.push(element); } }); returnere unik; } console.log(removeDuplicates(arr));> Produksjon
[ 'apple', 'mango', 'orange' ]>
Metode 6: Bruke indexOf()-metoden
De indexOf() metode brukes til å finne den første indeksen for forekomst av et matriseelement. vi kan iterere over elementene i matrisen, og vi vil skyve inn i den nye matrisen hvis den ikke eksisterer i den resulterende matrisen.
Eksempel: I dette eksemplet vil vi se bruken av indexOf()-metoden.
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));> Produksjon
[ 'apple', 'mango', 'orange' ]>
Metode 7: Bruke Underscore.js _.uniq()-funksjonen
Vi kan også bruke et tredjepartsbibliotek som f.eks Lodash eller Understrek.js for å fjerne dupliserte elementer fra en Javascript-array . De _.uniq() funksjon returnerer matrisen som ikke inneholder dupliserte elementer.
Eksempel: I dette eksemplet vil vi bruke funksjonen _.uniq().
Javascript const _ = require('underscore'); console.log( _.uniq([1, 2, 3, 4, 5, 4, 3, 2, 1]));> Produksjon:
[ 1, 2, 3, 4, 5 ]>