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

JavaScript中如何将对象键值对平级合并到目标对象

问题描述

我需要把keystoInsert对象中的每个键值对平级插入到payload对象中,但直接将keystoInsert作为属性添加时,会形成嵌套对象,无法达到平级展开的效果,求正确实现方法。

待插入对象

keystoInsert = {
    "marketName": "Chicago",
    "roleUserFirstName": null,
    "roleUserLastName": null,
    "roleUserEmailAddress": null
}

初始代码片段

const payload: requestPayload | any = {
    accountId: 1,
};

预期输出

{
    "accountId": 1,
    "marketName": "Chicago",
    "roleUserFirstName": null,
    "roleUserLastName": null,
    "roleUserEmailAddress": null
}

解决方法

方法一:使用对象展开运算符(推荐)

通过ES6的对象展开运算符...,可以直接将keystoInsert的所有键值对平级展开到payload中,写法简洁直观:

const payload: requestPayload | any = {
  accountId: 1,
  ...keystoInsert // 展开对象的所有属性
};

方法二:使用Object.assign()

该方法会将源对象的属性复制到目标对象上,实现平级合并:

const payload: requestPayload | any = {
  accountId: 1,
};
// 将keystoInsert的属性合并到payload
Object.assign(payload, keystoInsert);

两种方法都能实现预期的平级合并效果,优先推荐第一种,代码更简洁易读。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.13 03:10:26