You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何遍历JavaScript对象并返回指定结构的对象数组

实现代码

你之前的两种写法仅做了键值打印,未完成key解析和目标结构组装,直接使用以下任意一种写法即可得到符合要求的output数组:

  • 写法1(推荐,更简洁):基于Object.entries遍历实现
const data = {
  "model-10389": 164703,
  "model-10388": 164704,
  "model-10387": 164705,
}

const output = Object.entries(data).map(([key, val]) => ({
  modelId: Number(key.split('-')[1]),
  id: val
}))
  • 写法2:基于for...in遍历实现
const output = []
for (const key in data) {
  output.push({
    modelId: Number(key.split('-')[1]),
    id: data[key]
  })
}

原写法问题说明

  • Object.keys配合map的写法:仅打印了对象的属性值,既没有解析key中model-后缀的数字作为modelId,也没有在map回调中返回符合结构的对象
  • for...in的写法:仅做了键值对的控制台打印,没有组装目标结构,也没有将组装好的对象存入结果数组

核心处理逻辑:对象的key是model-数字id的固定格式,用split('-')拆分字符串后取第二段,转成数字类型就是需要的modelId,对象对应的value直接作为id字段即可。

内容的提问来源于stack exchange,提问作者unttyy

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.29 03:15:45