伪数组以及伪数组与真正的数组之间的转换
一、什么是伪数组?
无法直接调用数组方法或期望length属性有什么特殊的行为,不具有数组的push,pop等方法,但仍可以对真正数组遍历方法来遍历它们。典型的是函数
的argument参数,还有像调用getElementsByTagName,document.childNodes之类的,它们都返回NodeList对象都属于伪数组。可以使用
Array.prototype.slice.call(fakeArray)将数组转化为真正的Array对象。
这把符合以下条件的对象称为伪数组:
1、具有length属性
2、按照索引方式存储数据
3、不具有数组的push和pop等方法