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

js判断数组是否有重复数据的三种方法

时间:2014-11-27 17:44:30      阅读:221      评论:0      收藏:0      [点我收藏+]

标签:style   blog   io   ar   color   sp   for   on   数据   

var arr=new Array("aa","bb","cc","dd","aaa","aa");
// 方法1:取出数组中的一个值,与其之后的数据挨个比对>>>最容易想到,但运算最麻烦
var method1=function(array){
        for(var i=0;i<array.length-1;i++)
        {
            for(var j=i+1;j<array.length;j++)
            {
                if(array[i]==array[j])
                    alert("method1 same data : "+array[i]);
            }
        }
    }
// 方法2:数组按顺序排列后,生成一个新数组,如果有相同数据,那么他们肯定是紧挨着的,所以能够轻松找到重复数据。
var method2=function(array)
{
    var newarr=array.sort();
    for(var i=0;i<newarr.length-1;i++)
    {
        if (newarr[i]==newarr[i+1]) {
            alert("method2 same data : "+array[i]);
        };
    }
}
// 方法3:定义一个对象,这个对象的属性名称为array数组的值,属性的值为true。这样,当遇到有相同名称的属性时,说明array有重复数据
var method3=function(array)
{
    var newarr={};
    for(var i in array)
    {
        if (newarr[array[i]]) {
            alert("method3 same data : "+array[i]);
            return;
        };
        newarr[array[i]]=true;
    }
}

 

js判断数组是否有重复数据的三种方法

标签:style   blog   io   ar   color   sp   for   on   数据   

原文地址:http://www.cnblogs.com/obean/p/4126664.html

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