Categories: softare development

How to Remove Duplicates from a JavaScript Array

When working with arrays in JavaScript, you’ll often run into duplicate values. Removing them efficiently not only keeps your data clean but also makes your code more optimized. Let’s look at the most common ways of how to remove duplicates from a JavaScript array.

1. Using Set (ES6+)

const numbers = [1, 2, 2, 3, 4, 4, 5];
const uniqueNumbers = [...new Set(numbers)];
console.log(uniqueNumbers); // [1, 2, 3, 4, 5]

✅ Simple and efficient
✅ Best for modern JavaScript

2. Using filter() + indexOf()

const numbers = [1, 2, 2, 3, 4, 4, 5];
const uniqueNumbers = numbers.filter((value, index) => 
  numbers.indexOf(value) === index
);
console.log(uniqueNumbers); // [1, 2, 3, 4, 5]

✅ Works everywhere
⚠️ Slightly slower on large arrays

3. Using reduce() + includes()

const numbers = [1, 2, 2, 3, 4, 4, 5];
const uniqueNumbers = numbers.reduce((acc, value) => {
  if (!acc.includes(value)) acc.push(value);
  return acc;
}, []);
console.log(uniqueNumbers); // [1, 2, 3, 4, 5]

✅ Great for learning array methods

4. Using forEach() + Object Lookup

const numbers = [1, 2, 2, 3, 4, 4, 5];
const lookup = {};
const uniqueNumbers = [];

numbers.forEach(num => {
  if (!lookup[num]) {
    lookup[num] = true;
    uniqueNumbers.push(num);
  }
});

console.log(uniqueNumbers); // [1, 2, 3, 4, 5]

✅ Very fast for larger datasets

What You Should Know

The Set method is the easiest and most modern solution, but depending on the scenario (browser support, performance needs), other approaches can still be useful.

Start Learning JavaScript

Summary

How to remove duplicates from a JavaScript array is a common task with many solutions. The most modern and efficient method is using Set, while traditional methods like filter() + indexOf()reduce() + includes(), or a lookup object offer alternatives depending on performance needs and project requirements. The key takeaway: JavaScript gives you multiple tools to keep your data clean—pick the one that best fits your use case.

Share
Published by
codeflare

Recent Posts

Build a Node JS Web Server

A web server is the software responsible for receiving requests from clients, processing those requests,…

2 days ago

Shell Prompt Tutorial

A shell prompt is the text displayed by a command-line shell to show that it is ready…

5 days ago

The SOC Analyst

A SOC Analyst (Security Operations Center Analyst) is one of the frontline defenders of an organization’s cybersecurity…

3 weeks ago

Building an Offline-Friendly Image Upload System

Most image upload systems assume one thing: the user has a stable internet connection. That assumption…

3 weeks ago

JavaScript Background Sync API

Imagine a user submits a form while their internet connection suddenly disappears. Normally, the request…

3 weeks ago

10 Signs Your PC Has Been Hacked

Cybercriminals don't always announce their presence. Many compromises are designed to remain unnoticed for weeks…

1 month ago