閱讀395 返回首頁    go 汽車大全


JS中數組去除重複

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

複製代碼
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"]

最後更新:2017-11-05 12:04:58

  上一篇:go  關於webStrom-11.1配置less且自動生成.css和自動壓縮為.min.css/.min.js
  下一篇:go  JS中數組排序