freeCodeCamp:Diff Two Arrays

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

function diff(arr1, arr2) {
  var newArr = [];
  var newarr1 = arr1.filter(function(item){ return arr2.indexOf(item) == -1;});
  var newarr2 = arr2.filter(function(item){ return arr1.indexOf(item) == -1;});
  newArr = newArr.concat(newarr1,newarr2);
  return newArr;
}

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

思路就是先找出arr1中arr2没有的元素,再找出arr2中arr1没有的元素,然后把两组数拼接成新数组就搞定了。

posted @ 2016-11-01 14:56  酸菜有毒  阅读(...)  评论(...编辑  收藏