zoukankan      html  css  js  c++  java
  • js中数组去重的几种方法

    js中数组去重的几种方法
            1.遍历数组,一一比较,比较到相同的就删除后面的
                    function unique(arr){
                            for(var i=0;i<arr.length;i++){
                                    for(var j=i+1;j<arr.length;j++){
                                            if(arr == arr[j]){
                                                    arr.splice(j,1);
                                                    j--;
                                             }
                                     }
                              }
                              return arr.sort();
                    }
           
    2.遍历数组,一一比较,比较到相同的,就去掉,不同的放到一个新数组中
                    function unique(arr){
                            var result=[],isRepeated;
                            for(var i=0;i<arr.length;i++){
                                    isRepeated=false;
                                    for(var j=0;j<result.length;j++){
                                            if(arr == result[j]){
                                                    isResulted=true;
                                                    break;
                                            }
                                    }
                                    if(!isRepeated){
                                            result.push(arr);
                                    }
                            }
                            return result;
                    }
            3.先排序,前项与后项比较,去掉相同项
                    function unique(arr){
                            var temp=[];
                            this.sort();
                            for(var i=0;i<arr.length;i++){
                                    if(arr == arr[i+1]){
                                            continue;
                                    }
                                    temp[temp.length]=arr;
                            }
                            return temp;
                    }
            4. 用一个hashtable的结构记录已有的元素,这样就可以避免内层循环。恰好,在Javascript中实现hashtable是极为简单的
                            function unique(arr){
                                    var result=[],hash={};
                                    for(var i=0,elem;(elem = arr) != null;i++){
                                            if(!hash[elem]){
                                                    result.push(elem);
                                                    hash[elem] = true;
                                             }
                                     }
                                     return result;
                            }

  • 相关阅读:
    Microsoft .NET Framework 以及 CLR 的版本
    如何:备份 Team Foundation Server
    通过VS2008SP1 访问TFS2010
    Project 2007 Understanding Project's Percent Complete vs. Percent Work Complete
    TFS:从单服务器部署移到双服务器部署
    C#网络编程(基本概念和操作) Part.1
    图解Windows server 2012故障转移群集的安装、建立
    产品经理经验总结
    TCP同步与异步及阻塞模式,多线程+阻塞模式,非阻塞模式简单介绍
    Windows Phone开发概论
  • 原文地址:https://www.cnblogs.com/ricesm/p/5074361.html
Copyright © 2011-2022 走看看