js中如何以最简单的方式将数组元素添加到对象中

//如题,通常做法就是循环数组,最后在添加length属性,如:

  
var obj = {};  
    var pushArr = [11,22,33,44,55,66];
    for(var i=0;i<pushArr.length;i++) {
        obj[i] = pushArr[i];
    }
    obj.length = pushArr.length;

    console.log(obj); //{0:11,1:22,2:33,3:44,4:55,5:66,length:6}

简单方法:

//js将数组元素添加到对象中(或 数组转换成对象)有个小技巧:

var obj = {};  
[].push.apply(obj,[11,22,33,44,55,66]);

console.log(obj); //{0:11,1:22,2:33,3:44,4:55,5:66,length:6}

由于obj是个对象没有像数组的push()方法,所以利用数组的push()以及apply()的特性来将数组作用于push()并修改当前的引用。 有较严重的代码洁癖的患者可以使用这个方法。

转载自:http://www.dewen.net.cn/q/4563

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值