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

如何高效将带编号的person字段映射为独立对象数组?

批量处理对象字段的优化方案

需求说明

需要将输入数组:

[
  {
    "person_1": "jim",
    "person_2": "bob"
  }
]

转换为目标结构:

[
  {
    "people": [
      {
        "person": "jim"
      },
      {
        "person": "bob"
      }
    ]
  }
]

优化实现代码

const ogArray = [{
  "person_1": "jim",
  "person_2": "bob"
}]

const newArray = ogArray.map(item => {
  // 筛选并转换person_*格式的字段
  const people = Object.entries(item)
    .filter(([key]) => key.startsWith('person_'))
    .map(([_, value]) => ({ person: value }))
  
  return { people }
})

console.log(newArray);

代码说明

  • 用Object.entries()将对象拆解为键值对数组,统一遍历处理所有字段
  • 通过filter()筛选出键以person_开头的项,替代手动逐个选取字段的方式
  • 再用map()将筛选后的每个值转换为{person: value}的目标结构
  • 新增person_3这类同格式字段时,代码无需修改,完全符合DRY原则

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.27 17:10:12