我不知道怎么称呼它,谁想出一个更聪明的,我将不胜感激。
问题是PhpStorm没有下划线,我忽略了:
console.log('hello',)
当一切在mac上运行时,这种设计在windows机器上使站点崩溃。
我不知道如何搜索,但根据规范,这是允许的吗?
对我来说, duck 很正常,第二个变量是undefined。
我不知道怎么称呼它,谁想出一个更聪明的,我将不胜感激。
问题是PhpStorm没有下划线,我忽略了:
console.log('hello',)
当一切在mac上运行时,这种设计在windows机器上使站点崩溃。
我不知道如何搜索,但根据规范,这是允许的吗?
对我来说, duck 很正常,第二个变量是undefined。
让我们打开语言标准ECMA-262 2016 年 6 月第 7 版。
让我们看看我们的函数是如何被
12.3.4 Function Calls
调用的。正如你所看到的,当一个函数被调用时,一个对象被传递给它
Arguments
。其定义如下。也就是说,它可以为空或作为 传递
ArgumentList
。如您所见,列表由
AssignmentExpression
逗号分隔的值组成。这是标准中最难的部分,因为它AssignmentExpression
有一大堆不同的值选项。也就是说,我们可以简单地指定一堆各种各样的参数:条件表达式、箭头函数、表达式的各种组合、迭代器等等。但总的来说,我们对最简单的选择感兴趣
LeftHandSideExpression
:。接下来是一整套参考文献。但最终,一切都归结为各种表达式,或者在我们的例子中是最简单的
IdentifierName
和Identifier
。反过来,它们具有以下定义:也就是说,在任何情况下都必须至少有一个 Unicode 字母,因此
AssignmentExpression
不能为空。那里必须至少有一些东西,否则它将被AssignmentExpression
标记为可选 (opt) forArgumentList
.PS - 然后让某人尝试说标准很简单。