原生for循环去重
var str = [ 1, 2, 2, 2, 2, 3, 4, 43, 2, 21, 2, 1, 1, 1, 2, 3, 3, 4, 5, 6, 7, 7, 6, 57, 7, 89, 9, 6, 45, 32, 43, 43, ] var strArr=[] //存放不重复数据 for (let i = 0; i < str.length; i++) { if(strArr.indexOf(str[i])===-1){ strArr.push(str[i]) } } console.log(str) //原数组 console.log(strArr) //去重后
ES6中的set方法去重
set是一个集合允许存储任何类型的唯一值,无论是原始值还是对象引用
set通过构造函数的方式生成,接收一个数组作为参数。
Array.from()方法就是将一个类数组对象或者可遍历对象转换成一个真正的数组。
var str = [ 1, 2, 2, 2, 2, 3, 4, 43, 2, 21, 2, 1, 1, 1, 2, 3, 3, 4, 5, 6, 7, 7, 6, 57, 7, 89, 9, 6, 45, 32, 43, 43, ] //es6中的set方法去重 console.log(str) //原数组 str.sort((a, b) => { //排序 return a - b }) console.log( Array.from( new Set(str) ) ) //去重后 //ES6中的set方法不允许重复。Array.from()方法把一个类似于数组的对象转换成数组 //set是一个集合允许存储任何类型的唯一值,无论是原始值还是对象引用 //set通过构造函数的方式生成,接收一个数组作为参数 //Array.from()方法就是将一个类数组对象或者可遍历对象转换成一个真正的数组。
打印出来可以看到