Naučíme se, jak získat všechny jedinečné hodnoty (odstranit duplikáty) v poli JavaScript. Vzhledem k poli s různými hodnotami je naším cílem odfiltrovat všechny duplikáty a zobrazit výsledné pole v konzole.

získat všechny jedinečné hodnoty (odstranit duplikáty) v poli JavaScript
Všechny jedinečné hodnoty v poli JavaScript můžeme získat následujícími způsoby:
házet hází v Javě
Obsah
- Metoda 1: Použití smyčky for
- Metoda 2: Použití metody Array filter():
- Metoda 3: Použití metody set().
- Metoda 4: Použití metody reduction()
- Metoda 5: Použití metody forEach().
- Metoda 6: Použití metody indexOf().
- Metoda 7: Použití funkce _.uniq() Underscore.js
Metoda 1: Použití smyčky for
pro smyčku metoda zkontrolovala každou hodnotu původního pole (listArray) s každou hodnotou výstupního pole (outputArray), kde jsou odstraněny duplicitní hodnoty. Pokud aktuální hodnota neexistuje ve výstupním poli s jedinečnými hodnotami, přidejte prvek do výstupního pole.
Příklad: Tento příklad generuje jedinečné pole řetězcových hodnot.
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);> Výstup
[ 'Manish', 'Chandan', 'Piyush', 'Sunil', 'Pankaj', 'Tiny' ]>
Metoda 2: Použití metody Array filter():
Funkce arr.filter() se používá k vytvoření nového pole z existujícího pole, které se skládá pouze z těch prvků z daného pole, které splňují podmínku nastavenou funkcí argument.
Příklad: V tomto příkladu budeme používat pole filtr() metoda k odstranění duplikátů z pole.
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));> Výstup
[ 'g', 'e', 'k', 's', 'f', 'o', 'r' ]>
Metoda 3: Použití metody set().
Sada je sbírka položek, které jsou jedinečné, tj. žádný prvek se nemůže opakovat. Sady v ES6 jsou objednány: prvky sady lze iterovat v objednávce vložení. Sada může uložit jakýkoli typ hodnoty, ať už primitivní nebo objekty.
Příklad: V tomto příkladu budeme používat set() metoda k odstranění duplikátů z pole.
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));> Výstup
[ 'DS', 'Algo', 'OS', 'HTML', 'Java' ]>
Metoda 4: Použití metody reduction()
The metoda snížit(). se používá k redukci prvků pole a jejich spojení do konečného pole založeného na nějaké redukční funkci, kterou předáte.
jsp
Příklad: V tomto příkladu uvidíme použití metody reduction() .
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));> Výstup
[ 'apple', 'mango', 'orange' ]>
Metoda 5: Použití metody forEach().
Pomocí forEach() metoda , můžeme iterovat prvky v poli a vložíme je do nového pole, pokud v poli neexistuje.
Příklad: V tomto příkladu uvidíme použití metody 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); } }); vrátit jedinečný; } console.log(removeDuplicates(arr));> Výstup
[ 'apple', 'mango', 'orange' ]>
Metoda 6: Použití metody indexOf().
The metoda indexOf(). se používá k nalezení prvního indexu výskytu prvku pole. můžeme iterovat prvky v poli, a pokud ve výsledném poli neexistuje, vložíme je do nového pole.
Příklad: V tomto příkladu uvidíme použití metody 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));> Výstup
[ 'apple', 'mango', 'orange' ]>
Metoda 7: Použití funkce Underscore.js _.uniq().
Můžeme také použít knihovnu třetích stran jako např Lodash nebo Podtržítko.js k odstranění duplicitních prvků z a Pole Javascript . The funkce _.uniq(). vrátí pole, které neobsahuje duplicitní prvky.
Příklad: V tomto příkladu použijeme funkci _.uniq().
Javascript const _ = require('underscore'); console.log( _.uniq([1, 2, 3, 4, 5, 4, 3, 2, 1]));> Výstup:
[ 1, 2, 3, 4, 5 ]>