将一个类数组对象转化为数组的几种方法

1.slice

语法:slice(begin,end) 方法选择一个从开始到结束(不包括结束)的数组的一部分浅拷贝到一个新的数组对象,方法不会改变原数组。如果是对象则拷贝对象的引用到新数组,如果是基本类型则会拷贝这些值到新数组。

如果省略begin则会从0开始。如果end被省略则会抽取到最后一个元素,如果end数值大于数组长度则会抽取到最后一个元素。

使用Array.prototype.slice.call(arguments)可以将类数组转化为数组对象,[].slice.call(arguments)亦可

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

2.splice

语法:splice(start)

         splice(start,deleteCount)

         splice(start,deleteCount,item1,item2......)

返回一个包含被删除元素的数组,start是必须值,其他是可选值,item表示要添加的元素,splice方法会直接对数组进行修改。

Array.prototype.splice.call(arguments,0);

3.Es6 Array.from

语法:Array.from(arguments)

4.Array.prototype.concat.apply([],arguments

)

转载于:https://www.cnblogs.com/liubinghaoJavaScript/p/7507971.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值