Merge Two Arrays and Remove Duplicates – JavaScript

featured Image

An array is an ordered list of values and these values can be of any data type. Eg integer, string, boolean value or it can be a mix of all types.

Merging arrays is one of the common tasks and very easy to accomplish in JavaScript using inbuilt functions like spread operator (...) and concat() .

However, while merging two or more arrays, we may come across duplicate items in the array.

Example : If we just merge [1,2,3,4] and [1,2,5,6] we will get [1, 2, 3, 4, 1, 2, 5, 6] . Here 1 and 2 are the duplicate items in the array.

So here in this article, we will see how to merge and remove duplicates from an array in JavaScript.

Using Set and Spread Operator (…) to remove duplicates from array

The Spread Operator (...) can be used for adding items to arrays or for combining arrays or objects. It allows elements from an array or objects to be included in a list of some form.

The Set() in JavaScript is described as a collection of unique values. This means a value can occur only once in a Set. And a Set can store values of any data type.

Example:

const arr1 = [1,2,3,4]
const arr2 = [1,2,5,6]

const mergeArr = [...arr1, ...arr2] // merge array but don't remove duplication

console.log([...new Set(mergeArr)]) // remove duplicates from the array

Output:

[1, 2, 3, 4, 5, 6]

Using Set and concat() function to merge and remove duplicates in array

The concat() method is used to combine elements of two or more arrays in JavaScript. It does not modify the original arrays.

Here in the example, we will use concat() method to combine two arrays, and then we will use the spread operator (...) and create a new Set() to remove all the duplicate items from the array.

REMINDER: Set is a collection of unique values only. Same value cannot occur twice.

Example :

const arr1 = [1,2,3,4]
const arr2 = [1,2,5,6]
const mergeArr = [].concat(arr1,arr2) //Merge two array 
const removeDup = [...new Set(mergeArr)] // Remove duplicate from the array

console.log(removeDup)

Output:

[ 1, 2, 3, 4, 5, 6 ]

Using Underscore.js or Lo-Dash to remove duplicates in array JavaScript

Underscore.js or LoDash are utility library in JavaScript that have some pre-made functions that help us to perform some common task in JavaScript with just one function.

For example, to merge and remove the duplicate items from the array we just have to use _.union() function.

Example:

const arr1 = [1,2,3,4]
const arr2 = [1,2,5,6]
const arr3 = [2,1]

console.log(_.union(arr1, arr2, arr3));

Output:

[ 1, 2, 3, 4, 5, 6 ]

Related Topics:

Remove First And Last Element From An Array In JavaScript

Related Posts

featured Image

Get the 10 characters from a string using JavaScript.

Here, in this article we will learn how to get the first 10 character from any string using JavaScript. Here we will be using JavaScript’s String method substring. What is…

Read more
featured Image

Convert date to long date format using JavaScript

In this article we will look into how to convert a date to a long date format using JavaScript. To convert it to a long format we will be using…

Read more
featured Image

Prevent body from scrolling when a modal is opened

Here, in this article, we will learn how to prevent the body from scrolling when a modal or a pop-up is opened using JavaScript. The scroll event is not cancelable….

Read more

Leave a Reply

Your email address will not be published. Required fields are marked *