let arr = [1,2,3,'2','3',2,1];
(function(arr){
console.log([...(new Set(arr))]);
})(arr);
方法1
new Set() es6中的结构,其中元素不能重复 返回 {1,2,3,'2','3'}, [...] 解构成数组
(function(arr){
let hash = new Map();
arr = arr.reduce((item, value) => {
hash.has(value)?'':hash.set(value, true) && item.push(value); return item;
},[]);
console.log(arr);
})(arr);
方法2
reduce()方法循环数组 Map来进行重复判断
arr.reduce(() => {},[]); 空数组不能省略,省略的话,arr.reduce((a, b)=> { a 是前一个数, b是后一个数});