logo

Ta bort dubbletter av element från JavaScript-array

JavaScript-matriser är datastrukturer som kan lagra flera värden. Det kan dock finnas många fall där en array innehåller dubbletter av element. Den här guiden går igenom olika metoder för att ta bort dessa dubbletter och skapa en array med unika element.

Notera: Läs mer om JavaScript Arrays



ta bort-duplicerad-array-från-javascript

Metoder för att ta bort dubbletter av element från JavaScript-array

Innehållsförteckning



Använder JavaScript filter()-metoden

De filter() metod skapar en ny array av element som matchar det skickade villkoret genom återuppringningsfunktionen. Den kommer endast att inkludera de element för vilka true returneras.

Exempel: Koden nedan använder filter() metod för att ta bort dubblett av ett element i JavaScript-matrisen.

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

Produktion
[ 'apple', 'mango', 'orange' ]>

Använder JavaScript set()-metoden

Den här metoden ställer in en ny objekttyp med ES6 (ES2015) som låter dig skapa samlingar av unika värden.



Exempel: Det här exemplet använder JavaScript set() metod för att ta bort dubbletter från en array.

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

Produktion
[ 'apple', 'mango', 'orange' ]>

Använder JavaScript forEach()-metoden

Genom att använda forEach()-metoden , kan vi iterera över elementen i arrayen, och vi kommer att trycka in i den nya arrayen om den inte finns i arrayen.

Exempel: Metoden forEach() används för att ta bort elementen från JavaScript-matrisen i koden nedan.

Javascript
let arr = ['apple', 'mango',  'apple', 'orange', 'mango', 'mango']; function removeDuplicates(arr) {  let unique = [];  arr.forEach(element =>{ if (!unique.includes(element)) { unique.push(element);  } });  returnera unik; } console.log(removeDuplicates(arr));>

Produktion
[ 'apple', 'mango', 'orange' ]>

Använder JavaScript reduce() Method

De reduce() metod används för att reducera elementen i arrayen och kombinera dem till en slutlig array baserat på någon reduceringsfunktion som du klarar.

Exempel: Metoden reduce() används för att ta bort dubbletter från en array i JavaScript.

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

Använder JavaScript indexOf()-metoden

De indexOf() metod används för att hitta det första indexet för förekomst av ett matriselement. vi kan iterera över elementen i arrayen, och vi kommer att trycka in i den nya arrayen om den inte finns i den resulterande arrayen.

Exempel: Kodexemplet nedan använder metoden indexOf() för att ta bort dubbletter från en array.

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

Använda bibliotek från tredje part

Vi kan även använda ett tredjepartsbibliotek som t.ex Lodash eller Underscore.js för att ta bort dubbletter av element från en Javascript-array. De _.uniq() funktion returnerar arrayen som inte innehåller dubbletter av element.

Exempel: The _.uniq()-funktionen i underscore.js-biblioteket används i koden nedan för att ta bort element från en array.

HTML