使用JavaScript解构时获取父母和子女

时间:2018-11-08 18:29:42

标签: javascript

假设我们有一个对象:

let param = {
    obj: {
        y: 1
    }
}

我们想破坏它:

let { obj: {y} } = param 

现在我有

y //1
obj //not defined

我发现使用obj的唯一方法是:

let { obj, obj: {y} } = param

我觉得太重复了。

是否有任何方法可以使用obj而不在销毁时重复它?

谢谢。

1 个答案:

答案 0 :(得分:2)

实际上,,当前不是。最简短的语法就是您所拥有的。

但是,在ECMAScript提案中,有一个名为As Patterns的草案,其中可能有以下内容。 a.e.

let {obj: {y} as obj} = param;

尽管公认地长度不多,但使用起来更清晰。它处于第0阶段,因此还有很长的路要走,但这确实表明您需要按照您的建议进行某些工作,但是根本没有经过渠道适当的审查并将其添加到到目前为止的规格。

考虑到新的重组本身是多少,这在某种程度上是可以理解的。这是JavaScript开发人员不想要的功能之一,直到他们立即遇到您今天遇到的问题。