1.允许给函数赋默认值
function test( a, b = 'worse' ){
console.log(a,b)
}
test( 'its', 'great' ) /* its great */
test( ' its' ) /* its */
test( 'its', ' ' ) /* its */
2.函数的length属性
ES6中函数的length属性返回值是当前参数个数减去了具有默认值的参数个数
Eg;
(function( a ){}) /* 1 */
(function( a, b=1 ){}) /* 2-1=1 */
(function( a,b,c=3 ){}) /* 3-1=2 */
3.Rest参数
Rest参数接收函数的多余参数,组成一个数组,放在形参的最后。
function add(...s){
let sum = 0;
for( let i of s){
sum+ =s;
}
}
做一个示例,以下两种写法是等同的
var test = n => n;
/* 等价于 */
var test = function( n ){
return n;
}
注意:1.箭头函数的一个作用是可以简化回调函数。
2.箭头函数的this指向就是定义函数时所在的对象,不是使用时的对象。
3.箭头函数不可以当作构造函数。
4.不可以使用argument对象,不可以使用yield命令