题解 | #数组去重#
数组去重
http://www.nowcoder.com/practice/0b5ae9c4a8c546f79e2547c0179bfdc2
利用set进行判断去重
Array.prototype.uniq = function () { let arr = this; let res = [];//结果要返回的没有重复元素的数组 let set = new Set();//利用set记录数组中的元素,是否出现过 for (let i = 0; i < arr.length; i++) {//遍历数组中的所有元素进行处理 //如果set中没有该元素,说明该元素没有出现过,则将该元素放进结果数组并添加进set中记录 if (!set.has(arr[i])) { res.push(arr[i]); set.add(arr[i]); } //如果set中有该元素,说明该元素是重复元素,之前已经出现过,不需往结果数组中放 } return res; }