【发布时间】:2020-05-12 13:19:28
【问题描述】:
比较两个数组并返回一个新数组,其中包含仅在两个给定数组之一中找到的任何项目,但不能同时在两个给定数组中找到。也就是说,返回两个数组的对称差。
注意
您可以按任意顺序返回数组及其元素。
我试图通过遍历数组的每个元素来解决这个问题,如果数组中有多个元素,那么我们不希望它被返回。
注意:我比这个问题更进一步,并且基本上试图解决:“返回在任一数组中只出现一次的任何元素。”如何拒绝多次出现的元素?
我的代码不起作用:
function diffArray(arr1, arr2) {
var newArr = [...arr1, ...arr2];
let a = newArr.forEach();
function getOccurrence(newArr, a) {
return newArr.filter((v) => (v === value)).length;
}
}
diffArray([1, 2, 3, 5], [1, 2, 3, 4, 5]);
【问题讨论】:
标签: javascript arrays algorithm