JavaScript如何将普通对象转换为带name、value标签的对象数组
JavaScript 对象转指定结构数组实现
推荐写法:Object.entries + map组合
这是现代JS环境下最简洁的实现方式,代码如下:
const obj = { streaming_tile_x: 608, streaming_tile_z: 608, global_total_mesh_count: 9776, global_total_asset_count: 17831, global_total_texture_count: 64055, global_total_entity_count: 0, global_total_shader_count: 9776, } // 转换逻辑 const results = Object.entries(obj).map(([name, value]) => ({ name, value }))
Object.entries()会将原对象转换为[[键名1, 键值1], [键名2, 键值2]]格式的二维数组,再通过map遍历每一项,直接解构组装为要求的对象结构即可。
兼容写法:for...in遍历
如果需要兼容不支持Object.entries的低版本运行环境,可以用for...in遍历实现:
const results = [] for (const key in obj) { // 过滤原型链继承属性,仅保留对象自身属性 if (obj.hasOwnProperty(key)) { results.push({ name: key, value: obj[key] }) } }
内容的提问来源于stack exchange,提问作者JokerMartini
相关产品推荐
相关产品推荐

