去除数组中重复的元素
方法1:
var i = [1,2,4,1,2,3,4]; function unique(arr){ // 遍历arr,把元素分别放入tmp数组(不存在才放) var tmp = []; for(var i in arr){ //该元素在tmp内部不存在才允许追加 if(tmp.indexOf(arr[i])==-1){ tmp.push(arr[i]); }} return tmp; } unique(i);
方法2:自己写的一个方法,先给数组排序,然后前后比较,如果后一个与前一个相同,就删除前一个。因为splice方法会改变原数组,所以另取一个变量j,每删除一个元素,j++,数组长度减去j。
var i = [1,2,4,1,2,3,4]; Array.prototype.deleteaEle = function(){ var sortA = this.sort(); var l = sortA.length; for(var i=0,j=0;i<l;i++){ if(sortA[i+1-j]==sortA[i-j]){ sortA.splice(i-j,1); j++; } } return sortA; }; i.deleteaEle();

浙公网安备 33010602011771号