JS实现两个数组的不同项的合并

方法首先把两个数组相加,然后通过过滤方法判断是否有相同的两个项

filter是过滤的函数,其中v是每一项,i是下标,arr是两个数的和

getArrDifference(arr1, arr2) {

return arr1.concat(arr2).filter(function(v, i, arr) {

return arr.indexOf(v) === arr.lastIndexOf(v);

});

},JS实现两个数组的不同项的合并_第1张图片

 

 

上面是打印的第一个数组是传入的两个数组 arr1和arr2,后面那个数组长度为9的数组是合并的数组,也相当于arr、

这里使用的是用arr(两个数组相加的数组)数组的indexof和lastIndexOf来进行判断的,

indexOf:查找某个字符串在字符串首次出现的位置

lastIndexOf:从右想做查找某个字符串在字符串中最后一次出现的位置

通过判断同一个值是否在相同的位置来判断是否只出现了一次。

你可能感兴趣的:(前端)