Tip: Remove duplicates from a JavaScript array

Removing duplicates from an array in JavaScript can be done in a variety of ways, such as using Array.prototype.reduce()
, Array.prototype.filter()
or even a simple for
loop. But there's an easier alternative. JavaScript's built-in Set
object is described as a collection of values, where each value may occur only once. A Set
object is also iterable, making it easily convertible to an array using the spread (...
) operator.
const nums = [1, 2, 2, 3, 1, 2, 4, 5, 4, 2, 6];
[...new Set(nums)] // [1, 2, 3, 4, 5, 6]
You can wrap this in a helper method, which is exactly what the uniqueElements snippet does. For more complex cases, such as unique objects in an array based on a specific key, you might want to take a look at uniqueElementsBy.
Image credit: Luca Bravo on Unsplash
Recommended snippets
There are many ways to iterate and transform array data in JavaScript. Learn how each one works and where you should use them.
Learn how to use the JavaScript ES6 spread syntax to converting iterables to arrays and level up your code today.
When working with numeric arrays in JavaScript, you might find yourself in need of finding the minimum or maximum value. Here's a quick and easy way to do it.