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中数组去除重复的三种方法,希望对大家有所帮助!

  • 相关阅读:
    半主机模式和_MICROLIB 库
    工作中常用的git命令
    Mybatis延迟加载参数配置
    JUnit展示图形化测试结果
    可读、可维护、可扩展,原则、模式与重构
    乐观锁和悲观锁
    HashMap实现原理和底层数据结构?
    视图有啥用?
    单例模式常见有哪几种?
    RPC服务和HTTP服务的区别
  • 原文地址:https://www.cnblogs.com/wangliko/p/8280501.html
Copyright © 2011-2022 走看看