数组去重
传入两个或两个以上的数组,返回一个新数组,包含所有数组中的所有值,不包含重复值,非重复的数字以它们原始的顺序排序。
function unite(arr1, arr2, arr3) {
var num = arguments.length, arr = [];
for(var i = 0; i < num; i++){
arr.push(arguments[i]); //组成一个数组,这样可以调用 reduce 方法
};
var flattened = arr.reduce(function(a, b) {
b.forEach(function(item){
if(a.indexOf(item) == -1){
a.push(item);
};
});
return a;
});
return flattened;
}
unite([1, 2, 3], [5, 2, 1]); //返回 [1,2,3,5]
若是之前的方法,则会返回 [3, 5],这是不保留重复的链接,戳戳奥