ES2017 函数参数列表和调用后面的逗号

ECMAScript 2017 新特性提议 – 函数参数列表和调用后面的逗号 。

更多精彩内容请看 web前端中文站
www.lisa33xiaoq.net 可按Ctrl + D 进行收藏

概述

参数后面跟的逗号现在是合法的:

 function foo( param1, param2, ) {}

同样,函数调用时参数后面跟的逗号也是合法的:

 foo( 'abc', 'def', );

对象字面量和数组字面量后面跟的逗号

对象字面量后面跟的逗号会被忽略:

 let obj = { first: 'Jane', last: 'Doe', };

数组字面量后面跟的逗号也会被忽略:

 let arr = [ 'red', 'green', 'blue', ]; console.log(arr.length); // 3

为什么要这么做,有什么用? 有两个好处。

首先,重新排列元素项比较简单,如果你要改变最后一个元素项的位置,你不必添加和删除逗号。

其次,它帮助版本控制系统跟踪实际发生的变化。例如,从:

 [ 'foo' ]

修改为:

 [ 'foo', 'bar' ]

这么做,版本控制系统会标记 foo 行和 bar 行为已更改,尽管唯一真正的变化是添加了后面的一行。

特性:允许在参数定义和函数调用后面使用逗号

考虑到 后面跟的逗号 可选的和可忽略的好处,这个特性也被引入到了函数参数定义和函数参数调用中。

例如,以下函数声明在 ECMAScript 2015(ES6) 中会导致语法错误,但现在 ECMAScript 2017(ES8) 是合法的:

 function foo( param1, param2, ) {}

类似地,下面这个调用foo() 现在在语法上也是合法的:

 foo( 'abc', 'def', );

原文链接:http://exploringjs.com/es2016-es2017/ch_trailing-comma-parameters.html

【注:本文源自网络文章资源,由站长整理发布】

0
如无特殊说明,文章均为原作者原创,转载请注明出处

该文章由 发布

这货来去如风,什么鬼都没留下!!!
发表我的评论

Hi,请填写昵称和邮箱!

取消评论
代码 贴图 加粗 链接 删除线 签到