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

JavaScript如何基于另一对象的值重命名数组内对象的属性

实现方案

我们可以先预处理object1生成「旧键→新键」的映射字典,再遍历数组替换键即可,逻辑简洁性能友好:

// 预处理生成键映射表:{ "Part ID": "Material", "Desc": "Description" }
const keyMap = Object.fromEntries(
  Object.entries(object1).map(([newKey, [oldKey]]) => [oldKey, newKey])
)

// 遍历数组完成键替换
const array2 = array1.map(item => 
  Object.fromEntries(
    Object.entries(item).map(([oldKey, value]) => [keyMap[oldKey] || oldKey, value])
  )
)

说明

  • 键映射表仅生成1次,就算数组长度很大也不会重复计算,性能优于遍历每个元素时都去查object1的写法
  • 兜底逻辑keyMap[oldKey] || oldKey可以兼容object1未定义的旧键,直接保留原键避免出现无效键名
  • 全程使用JS内置方法实现,无额外依赖,可读性高

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.16 08:57:02