Skip to main content

数组去重

tip

考察JS的基础功底

ES6 Set

const uniqueArr = [...new Set(arr)];
const uniqueArr = Array.from(new Set(arr));

reduce

function unique(arr){
// 先排序,如果重复,则上一个下标的内容一样
return arr.sort().reduce((acc, current) => {
if(acc.length == 0 || acc[acc.length - 1] !== current){
acc.push(current);
}
return acc;
}, [])
}

filter

function unique(arr){
return arr.filter((element, index, array) => {
return array.indexOf(element) == index;
})
}