首页 > es6 箭头函数 是定义时就绑定了this,这个特性貌似很鸡肋啊!

es6 箭头函数 是定义时就绑定了this,这个特性貌似很鸡肋啊!

es6 的箭头函数 貌似很鸡肋(除了特定情况下可以少写一个self = this)。 真需要用this的时候完全帮不上忙啊,而且绕不过这个坑(bind都不行!)

你们都是怎么用箭头函数的??


如果你想在一个新的函数内部用到当前的this,那就用箭头函数来做。

而如果新的函数里要用自己的this,那就不要用箭头函数。


你说的对,并没有完全能解决作用域问题。对于纯js效果可能明显点,但对于新出的react的jsx写法,基本没用。即使在js部分能省略self=this,但是在render方法里也还需要bind一次才行,虽然看起来没有回调,其实render中dom的时间全部都是回调。这种方式没有es5中的var self= this好理解,所以说的鸡肋确实是这样。


箭头函数好处:

第二点极为有用,想想你平时写回调的时候是不是常常因 this 指向不对而抓狂?

至于真正需要用 this 时,如对象成员方法中,不要用箭头函数,这不是它擅长的地方。


es6 箭头函数不是直接bind(this), 而是箭头函数没有它自己的this值,箭头函数内的this值继承自调用函数时作用域...

箭头函数在js中可以解决很多问题, 但是也有例外, 比如在jquery的事件中, 就不能用箭头函数...

【热门文章】
【热门文章】