743 B
743 B
title, type, language, tags, cover, dateModified
| title | type | language | tags | cover | dateModified | ||
|---|---|---|---|---|---|---|---|
| Array unique symmetric difference | snippet | javascript |
|
paper-card | 2020-10-22T20:24:44+03:00 |
Returns the unique symmetric difference between two arrays, not containing duplicate values from either array.
- Use
Array.prototype.filter()andArray.prototype.includes()on each array to remove values contained in the other. - Create a
Setfrom the results, removing duplicate values.
const uniqueSymmetricDifference = (a, b) => [
...new Set([
...a.filter(v => !b.includes(v)),
...b.filter(v => !a.includes(v)),
]),
];
uniqueSymmetricDifference([1, 2, 3], [1, 2, 4]); // [3, 4]
uniqueSymmetricDifference([1, 2, 2], [1, 3, 1]); // [2, 3]