Diff Two Arrays

193 阅读1分钟

比较两个数组,然后返回一个新数组,该数组的元素为两个给定数组中所有独有的数组元素。换言之,返回两个数组的差异。

function diff(arr1, arr2) {
  var newArr = []; 
  var arr3 = arr1.concat(arr2);     //合并arr1和arr2
  
  function a(val){
    //找出arr3中不存在arr1和arr2的元素
    return arr1.indexOf(val) == -1 || arr2.indexOf(val) == -1;      
  }
  newArr = arr3.filter(a);
  return newArr;
}

diff([1, 2, 3, 5], [1, 2, 3, 4, 5]);