首页 > 编程语言 > 详细

JS — 数组去重(4种方法)

时间:2017-04-05 19:08:30      阅读:228      评论:0      收藏:0      [点我收藏+]

第一种:双重循环

 

var strCode=‘zxcvbnmasdfghjklopiuytrewqAWEDRFTGYHUJIK‘;
var str=‘‘;
for(var i=0;i<4;i++){
    var rand=Math.round(Math.random()*61);
    if(str.indexOf(strCode.charAt(rand))==-1){
        str+=strCode.charAt(rand);
    }else{
        i--;
    }
}
console.log(str);

 

第二种:新数组 

 

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);

 文章来自:http://www.qdfuns.com/notes/42231/be94f6921a24f86bd3dcedbe93ab75ef.html

JS — 数组去重(4种方法)

原文:http://www.cnblogs.com/webqiand/p/6670035.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!