30秒学会 JavaScript 片段 · 2017年8月17日

30秒学会 JavaScript 片段 – difference

Returns the difference between two arrays.

Create a Set from b, then use Array.prototype.filter() on a to only keep values not contained in b.

代码片段

const difference = (a, b) => {
  const s = new Set(b);
  return a.filter(x => !s.has(x));
};

使用样例

difference([1, 2, 3], [1, 2, 4]); // [3]