一 . 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]