gpt4 book ai didi

javascript - Babel 对 ES6 对象解构的实现是否正确?

转载 作者:数据小太阳 更新时间:2023-10-29 04:16:56 30 4
gpt4 key购买 nike

所以基本的结构化很好,{a, b} = obj 转译为 a = obj.a; b = obj.b.

我的问题是我不小心遇到了一些奇怪的语法,我想知道是否有人可以指出我的规范,因为我找不到它:

({a, b} = obj).c

这会执行两个 ab 赋值,然后返回 obj.c。对于字节流解码器,它实际上对我很有用,因为我可以写:

let width = ({bytes} = intDecode(bytes)).number;

我的问题是我没有在任何地方看到这种语法,并且不想依赖未正确实现或处于提案阶段的东西。

最佳答案

解构赋值没有什么特别之处:它的求值方式与使用 = 运算符的任何其他赋值一样。

所以它返回rval

这意味着您可以依赖您的语法。

一些细节:

解构部分在 6[ 1 中求值]:

Let status be the result of performing DestructuringAssignmentEvaluation of assignmentPattern using rval as the argument.

在这一项之后,赋值评估像往常一样发生,就像在 a = b = 42; 的情况下一样。

引用资料:

关于javascript - Babel 对 ES6 对象解构的实现是否正确?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32368944/

30 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com