数组去重(初识ES6)
较常见的一问题:数组去重。
方法一:利用hash数组的原理
var arr=[1,3,3,4,5,5,6,6,7,8,69,8,99,9,0,]; function unique(arry){ var newArry=[]; for(let i=0;i<arr.length;i++){ if(!newArry[arr[i]]){ newArry[arr[i]]=arr[i]; } } return newArry; } console.log(unique(arr));
方法二:indexOf方法的使用(有一定的兼容性问题)
var arr=[1,3,3,4,5,5,6,6,7,8,69,8,99,9,0,]; function unique(arry){ var newArray=[]; for(let i=0;i<arr.length;i++){ if(newArray.indexOf(arr[i])==-1) newArray.push(arr[i]); } return newArray; }
console.log(unique(arr));
方法:es6的set集合(好东西)[set是es6中提出来的一种新的数据集合]
var arr=[1,3,3,4,5,5,6,6,7,8,69,8,99,9,0,]; const set=new Set(arr);
arr=Array.from(set);
console.log(set);