Sorted Union

寫一個 function,傳入兩個或兩個以上的數組,返回一個以給定的原始數組排序的不包含重複值的新數組。

換句話說,所有數組中的所有值都應該以原始順序被包含在內,但是在最終的數組中不包含重複值。

非重複的數字應該以它們原始的順序排序,但最終的數組不應該以數字順序排序。

function unite(arr1, arr2, arr3) {
  var array=[];
  for(var i=0;i<arguments.length;i++){
     array=array.concat(arguments[i]);
  }
  return array.filter(function(element,index){
    return array.indexOf(element)===index;
    //當element指向第一個2時,index爲2,當element指向第二個2時,index爲4,array.indexOf(element)返回的值還是2(查找到第一個2的索引並返回),所以這時候就把後面重複的數都篩選去掉了
 });
}

unite([1, 3, 2], [5, 2, 1, 4], [2, 1]);
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章