说一说伪数组和数组的区别
- 伪数组它的类型不是Array,而是Object,而数组类型是Array。
- 伪数组可以使用的length属性查看长度,也可以使用[index]获取某个元素,但是不能使用数组的其他方法,也不能改变长度,遍历使用for in方法。
- 伪数组的常见场景: -函数的参数arguments
let newArr = [];
for(let i = 0; i < arguments.length; i++){
newArr[i] = arguments[i];
}
- 原生js获取DOM:document.querySelector(‘div’) 等
- jquery获取DOM:$(“div”)等
- 伪数组转换成真数组方法 -Array.prototype.slice.call(伪数组)
- Array.from(伪数组) 转换后的数组长度由
length
属性决定。索引不连续时转换结果是连续的,会自动补位。