这里把符合如下条件的对象称为伪数组:数组
一、具备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;
}
}