Files
30-seconds-of-code/snippets/difference.md
Angelos Chalaris 8a6b73bd0c Update covers
2023-02-16 22:24:28 +02:00

24 lines
554 B
Markdown

---
title: Array difference
tags: array
cover: interior-3
firstSeen: 2017-12-17T16:41:31+02:00
lastUpdated: 2020-10-19T18:51:03+03:00
---
Calculates the difference between two arrays, without filtering duplicate values.
- Create a `Set` from `b` to get the unique values in `b`.
- Use `Array.prototype.filter()` on `a` to only keep values not contained in `b`, using `Set.prototype.has()`.
```js
const difference = (a, b) => {
const s = new Set(b);
return a.filter(x => !s.has(x));
};
```
```js
difference([1, 2, 3, 3], [1, 2, 4]); // [3, 3]
```