ECMAScript 2017 的特性“函数参数列表和调用中的尾随逗号”是由 Jeff Morrison 提出的。
参数定义中的尾随逗号现在是合法的
类似地,函数调用中的尾随逗号现在也是合法的
对象字面量中的尾随逗号被忽略
数组字面量中的尾随逗号也被忽略
为什么这很有用?有两个好处。
首先,重新排列项目更简单,因为如果最后一项改变了位置,您不必添加和删除逗号。
其次,它有助于版本控制系统跟踪实际更改的内容。例如,从
到
会导致包含 'foo'
的行和包含 'bar'
的行都被标记为已更改,即使唯一的实际更改是添加了后者。
鉴于可选和忽略的尾随逗号的好处,该特性将它们带到了参数定义和函数调用中。
例如,以下函数声明在 ECMAScript 6 中会导致语法错误,但现在是合法的
类似地,这种对 foo()
的调用现在在语法上是合法的