# 数组去重
# 简单的方法
# 思路
新建一新数组,利用indexOf判断是否存在于新数组中,不存在则push到新数组,最后返回新数组
# 缺点
IE8以下不支持数组的indexOf方法
uniq (arr) {
let newArr = []
arr.forEach(item => {
if (newArr.indexOf(item) === -1) {
newArr.push(item)
}
})
return newArr
}
1
2
3
4
5
6
7
8
9
2
3
4
5
6
7
8
9
# 排序后相邻去除法
# 思路
先排序数组,之后比较相邻的两个元素,如果一样删除后面的
uniq (arr) {
arr.sort()
arr.forEach((item, index) => {
if (item === arr[index + 1]) {
arr.splice(index, 1)
}
})
return arr
}
1
2
3
4
5
6
7
8
9
2
3
4
5
6
7
8
9