freeCodeCamp:Sorted Union

写一个 function,传入两个或两个以上的数组,返回一个以给定的原始数组排序的不包含重复值的新数组。

换句话说,所有数组中的所有值都应该以原始顺序被包含在内,但是在最终的数组中不包含重复值。

非重复的数字应该以它们原始的顺序排序,但最终的数组不应该以数字顺序排序。

 1 function unite(arr1, arr2, arr3) {
 2   var args = Array.from(arguments);
 3   var arr = args.reduce(function(pre,cur){
 4     return pre.concat(cur);
 5   });
 6   arr = arr.filter(function(item,index){
 7     return arr.indexOf(item) === index;
 8   });
 9   return arr;
10 }
11 
12 unite([1, 3, 2], [5, 2, 1, 4], [2, 1]);

 

posted @ 2016-11-02 14:00  酸菜有毒  阅读(215)  评论(0编辑  收藏  举报