📌  相关文章
📜  14. 编写一个 JavaScript 函数来查找两个数组的差异.测试数据:console.log(difference([1, 2, 3], [100, 2, 1, 10])); ["3", "10", "100"] - Javascript (1)

📅  最后修改于: 2023-12-03 15:13:06.010000             🧑  作者: Mango

查找两个数组的差异

在前端开发中,常常需要对数组进行操作,比如找出两个数组中不同的元素。为了方便,我们可以编写一个 JavaScript 函数来实现这个功能。

函数实现
function difference(arr1, arr2) {
  return arr1.filter(x => !arr2.includes(x)).concat(arr2.filter(x => !arr1.includes(x)));
}

这个函数接收两个参数,表示要查找的两个数组。函数使用 filter 方法和箭头函数来找出在 arr1 中出现,但是在 arr2 中不存在的元素,再使用 concat 方法和 filter 方法找出在 arr2 中出现但是在 arr1 中不存在的元素,最终返回不同的元素组成的数组。

函数测试

我们可以使用以下代码来测试这个函数。

console.log(difference([1, 2, 3], [100, 2, 1, 10])); // ["3", "10", "100"]

这段代码会输出 ["3", "10", "100"],表示两个数组中不同的元素为 "3""10""100"

总结

在前端开发中查找两个数组的差异是常见的需求。我们可以使用 filter 方法和 concat 方法来实现这个功能。这个函数的实现方式简单、易懂,具有一定的实用性。