intersection

JavaScript, Array

Returns the elements that exist in both arrays, filtering duplicate values.

  • Create a Set from b, then use Array.prototype.filter() on a to only keep values contained in b.
const intersection = (a, b) => {
  const s = new Set(b);
  return [...new Set(a)].filter(x => s.has(x));
};
intersection([1, 2, 3], [4, 3, 2]); // [2, 3]

Recommended snippets & collections

  • JavaScript Array Tricks

    Snippet collection

    Learn a handful of awesome tips and tricks that you can leverage in your code to make array manipulation a breeze.

  • intersectionBy

    JavaScript, Array

    Returns the elements that exist in both arrays, after applying the provided function to each array element of both.

  • intersectionWith

    JavaScript, Array

    Returns the elements that exist in both arrays, using a provided comparator function.

  • pullAtIndex

    JavaScript, Array

    Mutates the original array to filter out the values at the specified indexes. Returns the removed elements.