📅  最后修改于: 2023-12-03 15:30:27.193000             🧑  作者: Mango
在 JavaScript 中,我们可以使用 diff
方法来比较两个数组的差异。
我们可以通过调用两个数组的 diff
方法来比较它们之间的差异。这个方法返回的是一个新的数组,包含两个数组之间的差异部分。具体使用方法如下:
const array1 = [1, 2, 3, 4, 5];
const array2 = [3, 4, 5, 6, 7];
const diff = array1.diff(array2);
console.log(diff);
上述代码将输出 [1, 2, 6, 7]
,即 array1
和 array2
之间不同的元素。
为了实现 diff
方法,我们需要在 Array
的原型上添加一个新的方法。这个方法将会遍历两个数组,比较它们之间不同的元素,并将其放入一个新的数组中。具体实现如下:
Array.prototype.diff = function (arr) {
return this.filter(item => !arr.includes(item)).concat(arr.filter(item => !this.includes(item)));
}
上述代码中,我们从 this
中先去除 arr
中存在的元素,再将 arr
中去除 this
中存在的元素,最后将这两个数组合并起来。这样就可以得到不同的元素了。
通过这个例子,我们学习了如何比较两个数组之间的差异。这个方法对于数组操作非常有用,可以帮助我们快速找到不同的元素,并进行相应的操作。