🌞

类数组转数组

类数组是一个玄学,它不是一个数组, 本质是一个拥有length属性和字符串属性"0"、"1"、"2"...的对象( 这么说其实也不对,因为数组也是对象????),实际上在我们真正的开发中, 有时候会遇到要将类数组转为数组的场景,所以这里介绍一下几种 类数组 -> 数组 的方法:

第一种,也是最容易想到的一种
1
2
3
4
const args = [];
for(let i = 0;item = arguments[i++];) {
  args.push(item);
}
第二种,借用数组的slice方法
1
Array.prototype.slice.call(arguments);
第三种
1
Array.prototype.contact.apply([],arguments);
第四种
1
[...arguments];
第五种(推荐这种,以上有一些方法属于旁门左道)
1
Array.from(arguments);
updatedupdated2020-01-022020-01-02
加载评论