在javascript中什麼是僞數組,如何將僞數組轉化爲標準數組?

這裏把符合如下條件的對象稱爲僞數組:數組

  一、具備length屬性函數

  二、按索引方式存儲數據prototype

  三、不具備數組的push.pop等方法對象

  僞數組(類數組):沒法直接調用數組方法或指望length屬性有什麼特殊的行爲,不具備數組的push.pop等方法,但仍能夠對真正數據遍歷方法來遍歷它們。典型的是函數document.childNodes之類的,它們返回的NodeList對象都屬於僞數組。索引

  能夠使用如下函數將僞數組轉化爲真正的Array對象(兼容問題處理)。io

  function makeArray( c ){function

    try{List

    return Array.prototype.slice.call( c );遍歷

  }catch( e ){方法

    var ret =[   ] ,   i    ,len=c.length;

    for(i=0;i<len;i++){

      ret[ i ]  =  ( c[ i ] );

}

    return  ret;

}

}

相關文章
相關標籤/搜索