//如题,通常做法就是循环数组,最后在添加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()并修改当前的引用。 有较严重的代码洁癖的患者可以使用这个方法。