Naučili se bomo, kako pridobiti vse edinstvene vrednosti (odstraniti dvojnike) v matriki JavaScript. Glede na matriko z različnimi vrednostmi je naš cilj filtrirati morebitne dvojnike in prikazati nastalo matriko v konzoli.

pridobite vse edinstvene vrednosti (odstranite dvojnike) v matriki JavaScript
Vse edinstvene vrednosti v matriki JavaScript lahko pridobimo na naslednje načine:
: v Javi
Kazalo
- 1. način: uporaba zanke for
- 2. način: uporaba metode Array filter():
- 3. način: Uporaba metode set().
- 4. način: Uporaba metode reduce().
- 5. način: Uporaba metode forEach().
- 6. način: Uporaba metode indexOf().
- 7. način: Uporaba funkcije Underscore.js _.uniq().
1. način: Uporaba zanke for
za zanko metoda je preverila vsako vrednost izvirne matrike (listArray) z vsako vrednostjo izhodne matrike (outputArray), kjer so podvojene vrednosti odstranjene. Če trenutna vrednost ne obstaja v izhodni matriki z edinstvenimi vrednostmi, dodajte element v izhodno matriko.
primer: Ta primer ustvari edinstveno matriko vrednosti niza.
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);> Izhod
[ 'Manish', 'Chandan', 'Piyush', 'Sunil', 'Pankaj', 'Tiny' ]>
2. način: uporaba metode Array filter():
Funkcija arr.filter() se uporablja za ustvarjanje nove matrike iz obstoječe matrike, sestavljene samo iz tistih elementov iz dane matrike, ki izpolnjujejo pogoj, ki ga nastavi funkcija argumenta.
primer: V tem primeru bomo uporabili matriko filter() metoda za odstranjevanje dvojnikov iz matrike.
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));> Izhod
[ 'g', 'e', 'k', 's', 'f', 'o', 'r' ]>
3. način: Uporaba metode set().
Niz je zbirka elementov, ki so edinstveni, kar pomeni, da se noben element ne more ponoviti. Nabor v ES6 je urejen: elemente nabora je mogoče ponoviti v vrstnem redu vstavljanja. Nabor lahko shrani katero koli vrsto vrednosti, bodisi primitivne ali objekte.
primer: V tem primeru bomo uporabili metoda set(). za odstranitev dvojnikov iz matrike.
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));> Izhod
[ 'DS', 'Algo', 'OS', 'HTML', 'Java' ]>
4. način: Uporaba metode reduce().
The metoda reduce(). se uporablja za zmanjšanje elementov matrike in njihovo združevanje v končno matriko na podlagi neke reduktorske funkcije, ki jo posredujete.
primer: V tem primeru bomo videli uporabo metode 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));> Izhod
[ 'apple', 'mango', 'orange' ]>
5. način: Uporaba metode forEach().
Z uporabo metoda forEach(). , lahko ponavljamo elemente v matriki in potisnemo v novo matriko, če v matriki ne obstaja.
primer: V tem primeru bomo videli uporabo metode 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); } }); vrni edinstveno; } console.log(removeDuplicates(arr));> Izhod
[ 'apple', 'mango', 'orange' ]>
6. način: Uporaba metode indexOf().
The metoda indexOf(). se uporablja za iskanje prvega indeksa pojavljanja elementa matrike. lahko ponavljamo po elementih v matriki in potisnemo v novo matriko, če ne obstaja v nastali matriki.
primer: V tem primeru bomo videli uporabo metode 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));> Izhod
[ 'apple', 'mango', 'orange' ]>
7. metoda: Uporaba funkcije Underscore.js _.uniq().
Uporabimo lahko tudi knjižnico tretjih oseb, kot je npr Lodash oz Underscore.js za odstranitev podvojenih elementov iz a Niz Javascript . The funkcija _.uniq(). vrne matriko, ki ne vsebuje podvojenih elementov.
kartica sim je vstavljena, vendar ni storitve android
primer: V tem primeru bomo uporabili funkcijo _.uniq().
Javascript const _ = require('underscore'); console.log( _.uniq([1, 2, 3, 4, 5, 4, 3, 2, 1]));> Izhod:
[ 1, 2, 3, 4, 5 ]>