Javascript作業—數組去重(要求:原型鏈上添加函數)


數組去重(要求:原型鏈上添加函數)

 

<script>
//數組去重,要求:在原型鏈上添加函數

//存儲不重復的--僅循環一次
if(!Array.prototype.unique1){
    Array.prototype.unique1=function(){
        var item ,
            hash={},
            len=this.length,
            result=[];
        for(var i = 0 ; i < len ; i++){
            item = this[i];
            if(!hash[item+Object.prototype.toString.call(item)]){ //1 和 '1'的處理
                result.push(item);
                hash[item+Object.prototype.toString.call(item)]=true;
            }
        }
        return result;
    }
}
 
//去除重復的--循環次數太多,不好
Array.prototype.unique2=function (){
    for(var i=0;i <=this.length;i++){
        for(var j=i+1;j<=this.length;j++)
        {
            if(arr[i]===arr[j]){arr.splice(j,1);j--;} //去除重復
        }
    }
    return arr;
}


var arr=[1,'1',2,3,3,4,5,4,4];

</script>

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM