ES6去重并排序
//Es6 数字+英文
let newArr = [...new Set(arr)].sort((a,b)=>{return a.charCodeAt(0)-b.charCodeAt(0)})
Array.from方法
可以将Set结构转换为数组结果,而我们知道set结果是不重复的数据集,因此能够达到去重的目的
function unique(arr) {
return Array.from(new Set(arr))
}
Map
Map 对象保存键值对,任何值(对象或者原始值) 都可以作为一个键或一个值。
function unique(arr) {
const res = new Map();
return arr.filter((a) => !res.has(a) && res.set(a, 1))
}
indexOf方法去重
function unique(arr) {
let res = []
for (let i = 0; i < arr.length; i++) {
if (res.indexOf(arr[i]) === -1) {
res.push(arr[i])
}
}
return res
}
相邻方法去重
function unique(arr) {
arr = arr.sort()
let res = []
for (let i = 0; i < arr.length; i++) {
if (arr[i] !== arr[i-1]) {
res.push(arr[i])
}
}
return res
}