JS数组去重(4种方法)

第一种:双重循环

var ary=[1,2,3,3,2,3,4,5]; for(var i=0;i<ary.length;i++){ for(var j=i+1;j<ary.length;j++){ if(ary[i]===ary[j]){ ary.splice(i,1); i--; } } } alert(ary);

第二种:新数组 

var ary=[1,2,3,3,2,3,4,5]; var ary1=[]; for(var i=0;i<ary.length;i++){ if(ary1.indexOf(ary[i])==-1){ ary1.push(ary[i]); } } alert(ary1);

第三种:可以记录次数的对象去重 

var ary=[1,2,3,3,2,3,4,5]; var obj={}; for(var i=0;i<ary.length;i++){ var cur=ary[i]; if(obj[cur]){ obj[cur]++; }else{ obj[cur]=1; } } var ary=[]; for(var attr in obj){ ary.push(attr); } alert(ary);

第四种:sort 思想 

var ary=[1,2,3,3,2,3,4,5]; ary.sort(function(a,b){return a-b;}); for(var i=0;i<ary.length;i++){ if(ary[i]===ary[i+1]){ ary.splice(i,1); i--; } } alert(ary);

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/wwyxxw.html