如果arr.length=1000
那要比较多少次你试试看

解决方案 »

  1.   

    转大梅以前的代码
    <script language=javascript>
    Array.prototype.unique = function()
    {
      var a = {}; for(var i=0; i<this.length; i++)
      {
        if(typeof a[this[i]] == "undefined")
          a[this[i]] = 1;
      }
      this.length = 0;
      for(var i in a)
        this[this.length] = i;
      return this;
    }
    var arr=[1,2,3,4,5,6,1,1,3,7,2]
    var result=arr.unique()
    alert(result)
    </script>
      

  2.   

    惊为天人,惊为天人啊
    居然只遍历一次数组
    不过
    if(typeof a[this[i]] == "undefined")
          a[this[i]] = 1;
    这个是什么意思,能不能麻烦讲解一下,谢谢了.............