Returns the elements that exist in both arrays, using a provided comparator function.
Array.prototype.filter()
and Array.prototype.findIndex()
in combination with the provided comparator to determine intersecting values.const intersectionWith = (a, b, comp) =>
a.filter(x => b.findIndex(y => comp(x, y)) !== -1);
intersectionWith(
[1, 1.2, 1.5, 3, 0],
[1.9, 3, 0, 3.9],
(a, b) => Math.round(a) === Math.round(b)
); // [1.5, 3, 0]
JavaScript, Array
Returns the elements that exist in both arrays, after applying the provided function to each array element of both.
JavaScript, Array
Returns every element that exists in any of the two arrays at least once, using a provided comparator function.
JavaScript, Array
Returns every element that exists in any of the two arrays at least once, after applying the provided function to each array element of both.