一. 数组去重的几个方法
一 . ES6数组去重
1.拓展运算符(...)内部使用for...of循环,
Set数据结构,它类似于数组,其成员的值都是唯一的.
var arr = [3,5,6,5,4,6,9]
console.log(...new Set(arr)) // [3,5,6,4,9]
2.利用Array.from将Set结构转换成数组,还能将伪数组转化为数组
var arr = [2,5,6,5,4,6,9]
console.log(Array.from(new Set(arr))) //[2, 5, 6, 4, 9]
二. 利用 arr.indexOf(a) 的方法解决数组去重,判断 a 值是否在arr中存在,
如果存在就返回所在的下标,如果不存在就返回 -1
var arr = [2,3,4,5,2,5,6]
function noRepeat (arr) {
var newArr = []
for(var i in arr){
if(newArr.indexOf(arr[i]) == -1){
newArr.push(arr[i])
}
}
return newArr;
}
console.log(noRepeat(arr)) // [2, 3, 4, 5, 6]