logo

Pašalinkite pasikartojančius elementus iš „JavaScript“ masyvo

„JavaScript“ masyvai yra duomenų struktūros, kuriose galima saugoti kelias reikšmes. Tačiau gali būti daug atvejų, kai masyve yra pasikartojančių elementų. Šiame vadove sužinosite apie įvairius būdus, kaip pašalinti šiuos dublikatus ir sukurti masyvą su unikaliais elementais.

Pastaba: Sužinokite daugiau apie „JavaScript“ masyvus



pašalinti-dublikatas-masyvas-iš-javascript

Pasikartojančių elementų pašalinimo iš „JavaScript“ masyvo metodai

Turinys



Naudojant JavaScript filtro() metodą

The filtras() metodas sukuria naują elementų masyvą, atitinkantį perduotą sąlygą per skambinimo funkciją. Ji apims tik tuos elementus, kuriems grąžinama tiesa.

Pavyzdys: Žemiau pateiktas kodas naudoja filtras() metodas Norėdami pašalinti „JavaScript“ masyvo elemento dublikatą.

Javascript
let arr = ['apple', 'mango', 'apple',  'orange', 'mango', 'mango']; function removeDuplicates(arr) {  return arr.filter((item,  index) =>arr.indexOf(element) === indeksas); } console.log(removeDuplicates(arr));>>  
Išvestis
[ 'apple', 'mango', 'orange' ]>

Naudojant JavaScript set() metodą

Šis metodas nustato naują objekto tipą su ES6 (ES2015), kuris leidžia kurti unikalių reikšmių rinkinius.



Pavyzdys: Šiame pavyzdyje naudojama JavaScript set() metodas pašalinti dublikatus iš masyvo.

Javascript
let arr = ['apple', 'mango', 'apple',  'orange', 'mango', 'mango']; function removeDuplicates(arr) {  return [...new Set(arr)]; } console.log(removeDuplicates(arr));>

Išvestis

Naudojant JavaScript forEach() metodą

Naudodami kiekvienam () metodui , galime kartoti masyvo elementus ir įstumsime į naują masyvą, jei jo masyve nėra.

Pavyzdys: Metodas forEach() naudojamas elementams pašalinti iš JavaScript masyvo toliau pateiktame kode.

Javascript
let arr = ['apple', 'mango',  'apple', 'orange', 'mango', 'mango']; function removeDuplicates(arr) {  let unique = [];  arr.forEach(element =>{ if (!unique.includes(element)) { unikalus.push(element);  } });  grąžinti unikalų; } console.log(removeDuplicates(arr));>>  
Išvestis
[ 'apple', 'mango', 'orange' ]>

Naudojant JavaScript mažinimo() metodą

The sumažinti() metodą naudojamas sumažinti masyvo elementus ir sujungti juos į galutinį masyvą, pagrįstą tam tikra reduktoriaus funkcija, kurią perduodate.

Pavyzdys: Sumažinimo () metodas naudojamas dublikatams pašalinti iš „JavaScript“ masyvo.

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));>

Išvestis

Naudojant JavaScript indexOf() metodą

The indexOf() metodas naudojamas norint rasti pirmąjį masyvo elemento atsiradimo indeksą. galime kartoti masyvo elementus ir įstumsime į naują masyvą, jei jo nėra gautame masyve.

Pavyzdys: Toliau pateiktame kodo pavyzdyje naudojamas indexOf() metodo metodas, siekiant pašalinti masyvo dublikatus.

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));>

Išvestis
[ 'apple', 'mango', 'orange' ]>

Naudojant trečiosios šalies biblioteką

Taip pat galime naudoti trečiosios šalies biblioteką, pvz Lodašas arba Underscore.js pašalinti pasikartojančius elementus iš Javascript masyvo. The _.uniq() funkcija grąžina masyvą, kuriame nėra pasikartojančių elementų.

Pavyzdys: _.uniq() bibliotekos underscore.js funkcija naudojama toliau pateiktame kode elementams iš masyvo pašalinti.

HTML