logo

Hvordan få alle unike verdier (fjern duplikater) i en JavaScript-matrise?

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å-unike-verdier-i-et-javascript

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: 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 ]>