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

如何通过改进的对象解构方式批量赋值属性至现有状态?

可行的简化方案

当然可以把这些重复的赋值代码简化成一两行,以下是两种实用的写法:

方法1:解构+Object.assign(可读性优先)

先从someVariable中解构出需要的属性,再通过Object.assign批量合并到someState上:

const someVariable = await promiseFunc();
const { something1, something2, something3, /* ... */ something20 } = someVariable;
Object.assign(someState, { something1, something2, something3, /* ... */ something20 });

方法2:直接解构赋值到目标属性(无临时变量)

不需要额外临时变量,直接在解构时指定赋值给someState的对应属性,注意必须用括号包裹整个解构语句,避免被解析为代码块:

const someVariable = await promiseFunc();
({ 
  something1: someState.something1, 
  something2: someState.something2, 
  // 依次列出到something20
  something20: someState.something20 
} = someVariable);

你之前尝试的someState { ... } = someVariable语法不合法,因为解构赋值需要明确指定每个属性的接收目标,不能直接省略赋值映射逻辑。

内容的提问来源于stack exchange,提问作者Muhammad Tahir Qaiser

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.07 09:45:31