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

使用大括号解构绑定对象后,如何访问原对象?

如何在解构对象后访问原对象?

我明白你的困惑啦——你用对象解构提取了emri属性,但现在发现没法访问原对象的其他属性,对吧?

先来看你的代码问题出在哪:

var {emri}={emri:"Arjon",mosha:23};

这里右边的{emri:"Arjon",mosha:23}是一个匿名临时对象,你只把它的emri属性提取出来赋值给了变量emri,但这个原对象本身没有被保存到任何变量里。所以现在emri只是字符串"Arjon",自然emri.mosha会返回undefined——字符串哪来的mosha属性呢?

解决方法:先保存原对象再解构

要同时拿到解构后的属性和原对象,最直接的方式就是先把原对象赋值给一个变量,再从这个变量里解构属性:

// 先把原对象存到变量里,比如叫person
const person = {emri:"Arjon",mosha:23};
// 从person中解构出emri属性
const {emri} = person;

// 现在两种访问都能实现了
console.log(emri); // 输出 "Arjon"
console.log(person.mosha); // 输出 23

为什么最初的写法不行?

你最初的代码里,匿名对象在解构完成后就没有任何变量引用它了,JavaScript的垃圾回收机制会很快把它清理掉,所以你根本没办法再找回这个原对象。只有当你把它赋值给一个变量,让它有“名字”之后,才能随时访问它的所有属性。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.12 05:17:25