Vi skal lære, hvordan man får alle unikke værdier (fjern dubletter) i et JavaScript-array. Givet et array med forskellige værdier, er vores mål at filtrere eventuelle dubletter fra og vise det resulterende array i konsollen.

få alle unikke værdier (fjern dubletter) i et JavaScript-array
Vi kan få alle unikke værdier i et JavaScript-array på følgende måder:
hvordan man blokerer YouTube-annoncer på Android
Indholdsfortegnelse
- Metode 1: Brug for loop
- Metode 2: Brug af Array filter() metoden:
- Metode 3: Brug af set()-metoden
- Metode 4: Brug reduce() metode
- Metode 5: Brug forEach()-metoden
- Metode 6: Brug af indexOf() metode
- Metode 7: Brug af Underscore.js _.uniq()-funktionen
Metode 1: Bruges til loop
for sløjfe metode kontrollerede hver værdi af det oprindelige array (listArray) med hver værdi af output-arrayet (outputArray), hvor de duplikerede værdier er fjernet. Hvis den aktuelle værdi ikke findes i output-arrayet med unikke værdier, skal du tilføje elementet til output-arrayet.
Eksempel: Dette eksempel genererer en unik matrix af strengværdier.
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);> Produktion
[ 'Manish', 'Chandan', 'Piyush', 'Sunil', 'Pankaj', 'Tiny' ]>
Metode 2: Brug af Array filter() metoden:
Funktionen arr.filter() bruges til at skabe et nyt array fra et eksisterende array, der kun består af de elementer fra det givne array, som opfylder en betingelse sat af argumentfunktionen.
Eksempel: I dette eksempel vil vi bruge arrayet filter() metode til at fjerne dubletter fra arrayet.
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));> Produktion
[ 'g', 'e', 'k', 's', 'f', 'o', 'r' ]>
Metode 3: Brug af set()-metoden
Et sæt er en samling af genstande, der er unikke, dvs. intet element kan gentages. Sæt i ES6 er bestilt: elementer i sættet kan gentages i indsættelsesrækkefølgen. Sættet kan gemme enhver type værdi, hvad enten det er primitivt eller objekter.
Eksempel: I dette eksempel vil vi bruge set() metode for at fjerne dubletter fra arrayet.
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));> Produktion
[ 'DS', 'Algo', 'OS', 'HTML', 'Java' ]>
Metode 4: Brug reduce() metode
Det reduce() metode bruges til at reducere elementerne i arrayet og kombinere dem til et endeligt array baseret på en eller anden reduktionsfunktion, som du passerer.
mysql ikke ens
Eksempel: I dette eksempel vil vi se brugen af 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));> Produktion
[ 'apple', 'mango', 'orange' ]>
Metode 5: Brug forEach()-metoden
Ved at bruge forEach() metode , kan vi iterere over elementerne i arrayet, og vi vil skubbe ind i det nye array, hvis det ikke findes i arrayet.
Eksempel: I dette eksempel vil vi se brugen af metoden forEach().
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 unikt; } console.log(removeDuplicates(arr));> Produktion
[ 'apple', 'mango', 'orange' ]>
Metode 6: Brug af indexOf() metode
Det indexOf() metode bruges til at finde det første indeks for forekomst af et array-element. vi kan iterere over elementerne i arrayet, og vi vil skubbe ind i det nye array, hvis det ikke eksisterer i det resulterende array.
Eksempel: I dette eksempel vil vi se brugen af metoden 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));> Produktion
[ 'apple', 'mango', 'orange' ]>
Metode 7: Brug af Underscore.js _.uniq()-funktionen
Vi kan også bruge et tredjepartsbibliotek som f.eks Lodash eller Underscore.js at fjerne duplikerede elementer fra en Javascript-array . Det _.uniq() funktion returnerer arrayet, som ikke indeholder duplikerede elementer.
Eksempel: I dette eksempel vil vi bruge _.uniq()-funktionen.
Javascript const _ = require('underscore'); console.log( _.uniq([1, 2, 3, 4, 5, 4, 3, 2, 1]));> Produktion:
[ 1, 2, 3, 4, 5 ]>