箭头函数
ES6新增了箭头函数。
箭头函数表达式的语法比普通函数表达式更简洁。
(参数1,参数2,…,参数N)=>{函数声明}
(参数1,参数2,…,参数N)=>表达式(单一)
//相当于:(参数1,参数2,…,参数N)=>{return表达式;}
当只有一个参数时,圆括号是可选的:
(单一参数)=>{函数声明}
单一参数=>{函数声明}
没有参数的函数应该写成一对圆括号:
()=>{函数声明}
实例
//ES5
var x=function(x,y){
return x*y;
}
//ES6
const x=(x,y)=>x*y;
有的箭头函数都没有自己的this。不适合定义一个对象的方法。
当我们使用箭头函数的时候,箭头函数会默认帮我们绑定外层this的值,所以在箭头函数中this的值和外层的this是一样的。
箭头函数是不能提升的,所以需要在使用之前定义。
使用const比使用var更安全,因为函数表达式始终是一个常量。
如果函数部分只是一个语句,则可以省略return关键字和大括号{},这样做是一个比较好的习惯:
实例
const x=(x,y)=>{return x*y};
|