Skip to content

Latest commit

 

History

History
13 lines (10 loc) · 417 Bytes

symmetricDifference.md

File metadata and controls

13 lines (10 loc) · 417 Bytes

symmetricDifference

Returns the symmetric difference between two arrays.

Create a Set from each array, then use Array.filter() on each of them to only keep values not contained in the other.

const symmetricDifference = (a, b) => {
  const sA = new Set(a), sB = new Set(b);
  return [...a.filter(x => !sB.has(x)), ...b.filter(x => !sA.has(x))];
}
// symmetricDifference([1,2,3], [1,2,4]) -> [3,4]