箭头函数是ES6新增的语法,( )=>{ },其实本质和原生的function声明方法没有太大的区别,只是换了一种写法。
let fn=( )=>{ };
两种情况下可以简写:
- 如果只有一个参数()可以省略
- 如果只有一个return,{}和return可以省掉
function myFunction(data){
return data;
}
比如以上的情况就可以简写为:
let myFunction=data=>data;
箭头函数和function的this指向问题:
- function传统定义的函数,this指向随着调用环境的改变而改变。
- 箭头函数中的指向则是固定不变,一直指向定义环境的。