zoukankan      html  css  js  c++  java
  • js去重复

    方法一:返回新数组每个位子类型没变

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    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"]

    方法二:类似于法一,但本农觉着法一更易于理解

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    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类型了!!关键时刻得处理

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    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中数组去除重复的三种方法,希望对大家有所帮助!

  • 相关阅读:
    (转)运维角度浅谈MySQL数据库优化
    关于MySQL的null值
    MySQL优化——or条件优化
    MySQL优化原理
    Xcode Archive打包失败问题
    ionic3 对android包进行签名
    ios 审核未通过 相机相册权限问题
    js计算两个日期相差天数
    截取URL链接中字段的方法
    ionic3 自定义组件 滑动选择器 ion-multi-picker
  • 原文地址:https://www.cnblogs.com/wangliko/p/8280501.html
Copyright © 2011-2022 走看看