箭头函数前面的参数为匿名函数的参数,后面的为匿名函数返回的参数
箭头函数的写法:
1.如果只有一条语句,可以将{}和return省略掉
2.如果语句为多条,则不可以省略{}和return
3.当省略{}和return时,如果返回的内容是一个对象,对象需要用括号()起来
var f=x=>x 相当于 var f=function(x) {return x} 若x为1,则这句代码执行的结果为1
var f=x=>{x} //undefined 返回一个代码段,而这个代码段中的x未定义,所以输出undefined
var f=x=>({x}) //{1}返回一个对象
箭头函数有几个使用注意点。
(1)函数体内的this对象就是定义时所在的对象,而不是使用时所在的对象。
(2)不可以当做构造函数
(3)不可以使用agruments对象,该对象在函数体内不存在
(4)不可以使用yield命令,因此箭头函数不能用作Generator函数
总结:箭头函数不能用于构造函数,没有prototype属性,不能绑定arguments,不能绑定this,无法使用call()或apply来改变其运行的作用域