Start of main content
Array symmetric difference based on function
Returns the symmetric difference between two arrays, using a provided function as a comparator.
const symmetricDifferenceWith = (arr, val, comp) => [
...arr.filter(a => val.findIndex(b => comp(a, b)) === -1),
...val.filter(a => arr.findIndex(b => comp(a, b)) === -1)
[1, 1.2, 1.5, 3, 0],
[1.9, 3, 0, 3.9],
(a, b) => Math.round(a) === Math.round(b)
More like this
Collection · 12 snippets
Returns the symmetric difference between two arrays, after applying the provided function to each array element of both.
Returns every element that exists in any of the two arrays at least once, using a provided comparator function.
Filters out all values from an array for which the comparator function does not return