我是打字机的新手,我想找到解决问题的正确方法。 所以我有两个数组A和B,我需要找到两个相对于数组A的数组之间的差异,并在单独的数组中返回结果,分别是addArray和removeArray 例如:
A = [1, 2, 3, 4];
B = [1, 5, 6, 7];
addArray =[5,6,7]
removedArray =[2,3,4]
寻找快速优雅的方式
答案 0 :(得分:2)
const A = [1, 2, 3, 4];
const B = [1, 5, 6, 7];
const difference = (left, right) => {
let a = new Set(left);
let b = new Set(right);
return [...a].filter(x => !b.has(x))
}
const addArray = difference(B, A);
const removedArray = difference(A, B);
console.log({ addArray, removedArray });
参考文献: