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

JavaScript如何提取对象数组指定字段合并为单个键值对对象

JavaScript数组转指定键值对象实现方案

你可以根据项目的JS兼容需求,选择以下任意一种实现方式:

方法1:Object.fromEntries 简洁写法(ES2019+ 支持)

这是写法最精简的现代方案,先通过map把原数组处理成键值对格式的二元数组,再直接传入API生成目标对象:

let myFinalData = Object.fromEntries(
  myCurrentData.map(item => [item._id, item.name])
);

方法2:reduce 遍历写法(ES5+ 全兼容)

如果需要兼容更低版本的JS环境,用数组的reduce方法是最通用的方案,初始值传入空对象,遍历过程中逐步挂载键值对:

let myFinalData = myCurrentData.reduce((res, item) => {
  res[item._id] = item.name;
  return res;
}, {});

方法3:基础循环写法(逻辑最直观)

如果对数组高阶函数不熟悉,直接初始化空对象后遍历赋值即可,逻辑零门槛:

let myFinalData = {};
myCurrentData.forEach(item => {
  myFinalData[item._id] = item.name;
});

以上三种写法运行后,得到的myFinalData结构和需求完全一致:

{
  D01: "Lunetts",
  D02: "Glasses",
  D03: "Auros"
}

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.29 04:48:17