数组:数组是有序的集合,里面存在的每一项称为数组中的元素
检测数组的方法
- Array.isArray()
- instanceof
- Object.prototype.toString.call(arr)
//Array.isArray();
var arr = [1,2,3,4,5];
console.log(Array,isArray(arr)); //true
//instanceof
console.log(arr instanceof Array) //true
var result = Object.prototype.toString.call(arr) === '[object Array]';
console.log(result); //true
伪数组转为真数组的方法
- 通常js里面通过class名获取元素会得到一个数组,该数组就是伪数组,大部分数组可用的方法它都不能使用
- 通过for循环遍历数组,把伪数组中的元素放到一个真实数组中
var arr = [];
for(var i = 0; i < 伪数组.length; i++) {
arr.push(伪数组[i]);
}
- 通过concat去合并数组(不推荐)
var arr = [].concat(伪数组)
- 改变this指向
var arr = Array.prototype.slice.call(伪数组);