gpt4 book ai didi

javascript - Extra , 允许用于解构作业

转载 作者:行者123 更新时间:2023-11-28 12:16:40 27 4
gpt4 key购买 nike

在 es6 中,以下似乎是有效代码:

function test(a1,{a=1,b=2} = {},) {}

注意函数参数中额外的,。我不确定这是否是一个错误,因为这个额外的 , 仅适用于解构分配。

最佳答案

从 ES2017 开始,无论解构如何,参数列表中的尾随逗号都是有效的。 (请参阅 FormalParameters 的规范,其中专门列出了 FormalParameterList[?Yield, ?Await] , 作为有效选项之一。)例如,这在兼容 ES2017 的 JavaScript 引擎上运行良好就像任何最近版本的 Chrome 中的 V8 一样:

function foo(a, b,) {
// ------------^
console.log(a, b);
}
foo(1, 2);

如果您在未解构时看到该逗号上的错误,而在解构时则没有,则说明您使用的 JavaScript 引擎尚未完全符合当前规范。

<小时/>

类似地,ES2017+ 中也允许在参数列表中使用尾随逗号:

function foo(a, b) {
console.log(a, b,);
// -------------^
}
foo(1, 2);

关于javascript - Extra , 允许用于解构作业,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48033894/

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