JS中将类数组转为数组的几种方法

时间:2025-02-07 20:40:02

JS中将类数组转为数组的几种方法

JavaScript并不是真正的数组,而是一种类似数组的对象,由于类数组无法使用数组的一系列方法,所有我在这里整理了几种常用的将类数组转为数组的方法。

1.遍历类数组。

arr = []
for (i = 0; i < arrayLike.length; i++) {    
arr.push(arrayLike[i])
}

2.使用Array原型中的方法

方法

let arr = Array.prototype.slice.call(arrayLike);

用call函数让类数组对象使用了Array原型的slice方法,这会截取类数组内所有项的value值形成一个新的数组
方法

let arr = Array.prototype.concat.apply([], arrayLike);

用apply函数修改指向,让一个空数组和类数组进行连接,这是会让空数组和类数组的value进行连接
方法

let arr = Array.prototype.splice.call(arrayLike, 0);

用call函数让类数组使用Array原型的splice方法而不进行裁切,得到数组

3.ES6新增的from方法

ES6在Array中新增了from方法,用于将一个类数组或可迭代对象转为数组.

arr = Array.from(arrayLike);