刚才看到一篇博文,数组去重的,我先试着写一下:新建一个空数组,对原数组进行for循环,对新数组使用indexOf方法判断新数组中是否有该数组元素,没有的话就加入新数组。后来看文中使用的是HashTable,尚未接触HashTable,Mark一下,学习学习。
我的代码:
function filter(arr) { var handledArr = []; for (var i = 0; i < arr.length; i++) { if (handledArr.indexOf(arr[i]) == -1) { handledArr.push(arr[i]); } } return handledArr; } filter([1,13,24,11,11,14,1,2]); //[1,13,24,11,14,2]
原博文地址:https://www.cnblogs.com/zhangdongBook/archive/2018/01/14/8284844.html
原博文代码:
function fliter(arr) { let hashTable = {}; let data = []; for(let i=0,l=arr.length;i<l;i++) { if (!hashTable[arr[i]]) { hashTable[arr[i]] = true; data.push(arr[i]); } } return data; } filter([1,13,24,11,11,14,1,2]); //[1,13,24,11,14,2]