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

如何将response数组转换为以user_name为键的对象结构?

将数组转换为指定结构对象的实现方法

可以用JavaScript的reduce方法快速实现这个格式转换,它能高效地把数组迭代处理成目标结构的对象:

包含所有元素的转换代码

const response = [
    {
      id: 1,
      user_name: 'abc',
      phone_number: 1234567890
    },
    {
      id: 2,
      user_name: 'def',
      phone_number: 9823437483
    },
    {
      id: 3,
      user_name: 'ghi',
      phone_number: 9834763467
    }
];

const transformedObj = response.reduce((acc, item) => {
  acc[item.user_name] = item;
  return acc;
}, {});

仅保留前两个元素的转换代码

如果只需要你示例里的前两个用户数据,在reduce前用slice截取数组即可:

const transformedObj = response.slice(0, 2).reduce((acc, item) => {
  acc[item.user_name] = item;
  return acc;
}, {});

代码说明

  • reduce的第一个参数是回调函数,每次遍历数组元素时,会把当前元素以它的user_name值作为键,存入累加对象acc中
  • 第二个参数{}是累加对象的初始值
  • 执行后transformedObj就会完全符合你想要的结构:以每个用户的user_name为键,对应的值是该用户的完整信息对象

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.29 15:12:46