繁体   English   中英

销毁时的参考对象

[英]Reference object when destructuring

我在玩解构:

function create(){
 let obj={a:1,b:2}
obj.self=obj
 return obj
}
const {a,self} = create()

有没有一种方法可以在不添加此类属性的情况下获取自身对象?

function create(){
 let obj={a:1,b:2}
// removes   obj.self=obj
 return obj
}
const {a,this} = create()

如果可能,在一行代码中!

预先感谢您的帮助。

您可以将create返回值包装在临时外部对象中,然后通过属性名称从外部对象访问原始对象。 这仍然允许您从原始对象中拉出属性。

const {me:{a}, me} = {me:create()}

这将使用对象的属性a创建变量a ,并创建保存整个对象的变量me

或者,用外部对象的属性名称(例如,用foo代替me )来为其命名:

const {me:{a}, me:foo} = {me:create()}

这仍然需要创建其他属性,但是该属性存在于立即放置的包装对象上。 这可以完全在外部create因此您不必为了使结构易于破坏而仅涉及create函数如何运行的过程。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM