类数组和数组

2021-08-14  本文已影响0人  WANG_M

一.类数组

(1)在写法上跟数组一样,例如 arguments 和 length 的写法
(2)不具有数组所具有的方法,例如push、slice等等;
(3)元素属性名必须是数值或者可转换为数值的字符

二.常见的类数组

(1)arguments对象
(2)DOM方法的返回结果,比如document.getElementsByClassName()
(3)jQuery对象,比如$("div")

三.类数组和数组的区别和联系

相同点
都可用下标索引访问每个元素
都有length属性
不同点
数组对象类型为Array,遍历数组可以用for...in..和for循环
类数组对象类型为Object,遍历类数组只能用for循环

四.类数组转换为数组

1.因为类数组不具有数组所具有的API,所以更常用的是将类数组转换为数组
Array.prototype.slice.call(arguments)

function list() {
    return Array..prototype.slice.call(arguments);
}
var li = list(1,2,3,4);
console.log(li);
//[1,2,3,4]

2.Array.from()
该方法ES6新增的方法,它可以将类数组对象和可遍历对象转为数组

console.log(Array.from('star'));
//['s','t','a','r']

3.Array.of()

console.log(Array.of(1,2,3,4));
//[1,2,3,4]

该方法也是ES6新增的Array构造函数,用于将参数中所有值作为元素形成数组

上一篇下一篇

猜你喜欢

热点阅读