需求
有两个数组arr1,arr2
实现arr2中去除arr1相同的元素
e.g arr1=[1,2,3] arr2=[2,3,4] ===> result = [4]
实现
- 获取两个数组(arr1,arr2)的交集arr3
- 获取交集arr3与arr2中arr2的差集就是我们要的result
JS
交集
var arr3 = arr2.filter(function(v){
return arr1.indexOf(v)!==-1 // 利用filter方法来遍历是否有相同的元素
})
差集
var result = arr2.concat(arr3 ).filter(function (v) {
return arr2.indexOf(v)===-1 || arr3 .indexOf(v)===-1
})