箭头函数的理解:
ES6中新增的一个特性:=>
var func = () => {.....};
箭头函数的一些注意事项:
-
箭头函数中的this是函数定义时所在的对象,而不是运行时所在的对象,这解决了闭包带来的this指向改变的问题。常见的使用场景是:回调函数,确保回调执行时this指向正确。
//传统写法 function handle(){ this.age = 13; var that = this; return function(){//闭包执行时,this会指向window,而不是handle中的this了 return that.age; } } //箭头函数 function handle(){ this.age = 13; return () => this.age;//this指向定义时handle中的this,指向正确 }
箭头函数中并没有绑定this的机制,而是根本没有自己的this,所以会使用外层的this。由于没有自己的this,所以不能被当做构造函数来调用。
箭头函数中不能使用arguments、等对象