JS判断一个数组中是否有重复值的三种方法

来源:互联网 发布:乔丹在奇才队的数据 编辑:程序博客网 时间:2024/04/28 10:51
方法一: 
Js代码  收藏代码
  1. var ary = new Array("111","22","33","111");  
  2.   
  3. var s = ary.join(",")+",";  
  4.   
  5.  for(var i=0;i<ary.length;i++) {  
  6.   
  7.  if(s.replace(ary[i]+",","").indexOf(ary[i]+",")>-1) {  
  8.   
  9.   alert("数组中有重复元素:" + ary[i]);  
  10.   
  11.   break;  
  12.   
  13.  }  
  14.   
  15. }  



方法二: 
Js代码  收藏代码
  1. var ary = new Array("111","22","33","111");  
  2.   
  3. var nary=ary.sort();  
  4.   
  5.  for(var i=0;i<ary.length;i++){  
  6.   
  7.  if (nary[i]==nary[i+1]){  
  8.   
  9.   alert("数组重复内容:"+nary[i]);  
  10.   
  11.  }  
  12.   
  13. }  


方法三: 
Js代码  收藏代码
  1. function isRepeat(arr){  
  2.   
  3.      var hash = {};  
  4.   
  5.      for(var i in arr) {  
  6.   
  7.          if(hash[arr[i]])  
  8.   
  9.               return true;  
  10.   
  11.          hash[arr[i]] = true;  
  12.   
  13.      }  
  14.   
  15.      return false;  
  16.   
  17. }  
0 0