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));
};
EXAMPLES
difference([1, 2, 3], [1, 2, 4]); // [3]
有兩個陣列做比較時,篩出不一樣的元素,
例如 [1,2,3] [1,2,4] // [3]
// 會挑出以第一組陣列不一樣的元素當作結果。
var mySet = new Set();
mySet.add(1); // Set [ 1 ]
mySet.add(5); // Set [ 1, 5 ]
mySet.add(5); // Set [ 1, 5 ]
mySet.add('some text'); // Set [ 1, 5, 'some text' ]
例如:
var mySet = new Set(['value1', 'value2', 'value3']);
// true
mySet.has('value1');
console.log(mySet.has('value1'))
判斷輸入的參數
const s = new Set(b); //先把陣列重複的元素篩出,變成每個值都 獨立的陣列
再來把第一個陣列 a 用filter()方法 篩出裡面要跟 b陣列 不一樣的元素
MDN:New Set()