实现一个函数,要求比较两个数组,然后返回一个新数组,该数组的元素为两个给定数组中所独有的元素,换而言之,返回两个数组的差异
时间: 2024-03-09 20:46:23 浏览: 84
可以使用以下的 JavaScript 代码实现:
```javascript
function diffArray(arr1, arr2) {
var newArr = [];
// Check arr1 for items not in arr2
for (var i = 0; i < arr1.length; i++) {
if (arr2.indexOf(arr1[i]) === -1) {
newArr.push(arr1[i]);
}
}
// Check arr2 for items not in arr1
for (var j = 0; j < arr2.length; j++) {
if (arr1.indexOf(arr2[j]) === -1) {
newArr.push(arr2[j]);
}
}
return newArr;
}
```
该函数接收两个数组作为参数,然后遍历这两个数组,找出在其中一个数组中出现过但在另一个数组中没有出现过的元素,将其添加到一个新数组中,最后返回该新数组。
例如:
```javascript
var arr1 = [1, 2, 3, 4, 5];
var arr2 = [1, 2, 3, 6, 7];
console.log(diffArray(arr1, arr2)); // 输出 [4, 5, 6, 7]
```
在这个例子中,`arr1` 和 `arr2` 中都包含了数字 1、2 和 3,因此这些元素不会被添加到新数组中。然而,`arr1` 中包含了数字 4 和 5,而 `arr2` 中包含了数字 6 和 7,因此这些元素会被添加到新数组中,最终得到的结果是 `[4, 5, 6, 7]`。
阅读全文