• 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;
                            }

  • 相关阅读:
    浏览器兼容之background-size
    bootstrap学习之全局样式
    bootstrap dropdown的点击变为:hover 后自动下拉
    看完了《缔造企鹅》
    2015年阅读记录
    博士论文致谢 作一下
    如何将Visio转化为EPS? For Latex
    《乌合之众》 古斯塔夫·勒庞
    笑傲江湖
    社会化推荐(一) 理论和实践 对科学的思考
  • 原文地址:https://www.cnblogs.com/ricesm/p/5074361.html
Copyright © 2020-2023  润新知