zoukankan      html  css  js  c++  java
  • 数组去重方法

    第一种

    Array.prototype.unique1=function(){

         var res=[this[0]];

         for(var i=1;i<this.length;i++){

               var repeat=false;

               for(var j=0;j<res.length;j++){

                    if(this[i]==res[j]){

                       repeat=true;

                       break;

                    }

               }

                if(!repeat){

                     res.push(this[i]);

                 }

         }

          return   res;

    }

    var arr=[1,'a','a','b','d','e','e',1,0]

    alert(arr.unique1());

    第二种(先排序再比较)

    Array.prototype.unique2=function(){

        this.sort();//先排序

        var res=[this[0]];

        for(var i=1;i<this.length;i++){

             if(this[i]!==res[res.length-1]){

                res.push(this[i]);

            }

        }

        return  res;

    }

    var arr=[1,'a','a','b','d','e','e',1,0]

    alert(arr.unique2());

    第三种(比较高级)

    Array.prototype.unique3=function(){

        var res=[];

        var json={};

        var res=[this[0]];

        for(var i=0;i<this.length;i++){

             if(!json[this[i]]){

                res.push(this[i]);

                json[this[i]]=1;

            }

        }

        return  res;

    }

    var arr=[112,112,34,'你好',112,112,34,'你好','str','str1']

    alert(arr.unique3());

  • 相关阅读:
    嵌入式工程师为何不用学习C++语言?
    汽车电子基础知识
    为什么寄存器比存储器快?
    数字信号和模拟信号
    JLink和JTag的区别
    C++中static关键字作用总结
    所谓高情商,就是会说话
    汽车电子缩略语及术语
    卷积
    算法整理
  • 原文地址:https://www.cnblogs.com/Strong-stone/p/10641488.html
Copyright © 2011-2022 走看看