FCC 题目 Diff Two Arrays

2017-05-21  本文已影响8人  a1838b5b5d28

题目要求

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

相关方法

Array.indexOf(element) 用来判断Array中有没有element
Array.concat(arr1) 用来合并两个数组

源代码

function diff(arr1, arr2) {
  var newArr = [];
  var SumArr=arr1.concat(arr2); //将两个数组合并
  for(var i=0;i<SumArr.length;i++){ //遍历合并后的数组,与两个数组比较
//用indexOf 来判定arr1或arr2中有没有总数组中的元素,即有没有独立元素,若没有则等于-1    
    if(arr1.indexOf(SumArr[i])==-1||arr2.indexOf(SumArr[i])==-1){
        newArr.push(SumArr[i]);//将符合条件的元素push到新数组newArr
    }
  }
  return newArr;
}

diff([1, 2, 3, 5], [1, 2, 3, 4, 5]);
上一篇 下一篇

猜你喜欢

热点阅读