如何将简单JavaScript数组转换为指定结构的对象列表
实现方案
直接使用JavaScript原生数组方法map()即可完成转换,该方法会遍历原数组每一项,按你定义的规则返回新数组,不会改动原始数组。
标准写法(支持ES6及以上环境)
注意箭头函数直接返回对象时,需要给对象外层包裹圆括号,否则JS会将对象的大括号识别为函数代码块起始标记,触发语法错误:
const l = [0.5, 4.5, 7.5] const obj = l.map(item => ({ value: item, width: 2 }))
兼容旧环境写法
如果需要兼容不支持ES6箭头函数的老旧环境,可以换成普通函数的写法:
var l = [0.5, 4.5, 7.5] var obj = l.map(function(item) { return { value: item, width: 2 } })
运行以上任意一段代码,得到的obj结构都和你预期完全一致:
[ {value: 0.5, width: 2}, {value: 4.5, width: 2}, {value: 7.5, width: 2} ]
内容的提问来源于stack exchange,提问作者jay queue
相关产品推荐
相关产品推荐

