伪数组

在javascript中什么是伪数组,如何将伪数组转化为标准数组

这里把符合以下条件的对象称为伪数组:

1,具有length属性

2,按索引方式存储数据

3,不具有数组的push,pop等方法

伪数组(类数组):无法直接调用数组方法或期望length属性有什么特殊的行为,不具有数组的push,pop等方法,但仍可以对真正数组遍历方法来遍历它们。典型的是函数的argument参数,还有像调用document.getElementsByTagName, document.childNodes之类的,它们返回的NodeList对象都属于伪数组。

可以使用以下函数将伪数组转化为真正的Array对象

function  makeArray(c) {     
    try{           
          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;       
         } 
  }   
posted @ 2019-08-13 14:27  白ING  阅读(236)  评论(0编辑  收藏  举报