码迷,mamicode.com
首页 > 编程语言 > 详细

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

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

标签:obj   not   --   ==   str   random   数组   push   alert   

第一种:双重循环

 

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种方法)

标签:obj   not   --   ==   str   random   数组   push   alert   

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

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!