首頁  >  文章  >  web前端  >  JavaScript中陣列去除重複的三種方法_javascript技巧

JavaScript中陣列去除重複的三種方法_javascript技巧

WBOY
WBOY原創
2016-05-16 15:04:301107瀏覽

廢話不多說了,具體方法如下:

方法一:傳回新數組每個位子類型沒變

function outRepeat(a){
      var hash=[],arr=[];
      for (var i = 0; i < a.length; i++) {
        hash[a[i]]!=null;
        if(!hash[a[i]]){
          arr.push(a[i]);
          hash[a[i]]=true;
        }
      }
      console.log(arr);
    }
    outRepeat([2,4,4,5,"a","a"]);//[2, 4, 5, "a"] 

方法二:類似法一,但本農覺著法一更容易理解

function outRepeat(a){
      var hash=[],arr=[];
      for (var i = 0,elem;(elem=a[i])!=null; i++) {
        if(!hash[elem]){
          arr.push(elem);
          hash[elem]=true;
        }
      }
      console.log(arr);
    }
    outRepeat([2,4,4,5,"a","a"]);//[2, 4, 5, "a"] 

方法三:比前兩個更易於理解但是返回的新數組每個位子的number類型變為string類型了! !關鍵時刻得處理

function outRepeat(a){
      var hash=[],arr=[];
      for (var i = 0; i < a.length; i++) {
        hash[a[i]]=null;
      }
      for(var key in hash){
          arr.push(key);        
        }
      console.log(arr);
    }
    outRepeat([2,4,4,5,"a","a"]);//["2", "4", "5", "a"]

以上是小編給大家介紹的JavaScript中陣列去除重複的三種方法,希望對大家有幫助!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn