1. 程式人生 > >陣列去重(JS)

陣列去重(JS)

(棧型別) 原始值:boolen,num,string,null,undefined

(堆型別) 引用值:object,array

首先重新定義一個type()函式,

<script>
function type(target){
    var ret = typeof(target);//通過typeof先判斷是否屬於陣列或物件型別,並放入ret
    var template = {
        '[object Array]':'array',
        '[object Object]':'object',
        '[object Number]':'number-object',
        
'[object Boolean]':'boolean-object', '[object String]':'string-object', } if(target===null){ return 'null';//如果target為null,則返回null,注意是三個等於號 }else if (ret == 'object'){ var str = Object.prototype.toString.call(target);//判定陣列還是物件的方法之一,toString.call
return template[str]; }else{ return ret; } } </script>

 

陣列去重

<script>
//思路:,給每個陣列一個鍵,組成鍵值對,如果值沒有鍵,則新增並且放入一個新陣列
Array.prototype.unique = function(){
    var temp = {},
        arr = [],
        len = this.length;
        for
(var i = 0;i<len;i++){ if(!temp[this[i]]){ temp[this[i]]='abc'; arr.push(this[i]); } } return arr; } </script>

 

 

 

 

 


更多專業前端知識,請上 【猿204