数组去重
数组去重作为js的经典面试题,比较考察js基础,在实际应用中也有较多的场景。
常规方法
- 利用对象属性
function oSort( arr ) { var result = {}; var newArr = []; for (var i = 0 ; i < arr.length; i ++ ) { if (! result[arr[i]]) { newArr.push(arr[i]); result[arr[i]] = 1; } } return newArr; }复制代码
- 利用传入数组查询值指针是否为自己
function oSort2( arr ) { var n = []; for (var i = 0 ; i
- 查找返回数组查询值是否存在
function oSort3 ( arr ) { var n = []; for (var i = 0 ; i
es6拓展
- set ,本身数据结构为非重复数组
const unique = arr => { return [...new Set(arr)]}复制代码
- filter ,支持数组过滤
const unique = arr => { return arr.filter((ele, index, array) => { return index === array.indexOf(ele) })}复制代码