React Native实践程序员首页投稿(暂停使用,暂停投稿)

「ES6」箭头函数

2017-06-21  本文已影响0人  Floveluy

基本

其实箭头函数就是以前的

function(){}

之后es6提供了箭头函数

() => { … } // 零个参数用 () 表示; 
x => { … } // 一个参数可以省略 (); 
(x, y) => { … } // 多参数不能省略 ();

箭头函数最大的作用

最大的作用就是现在能正确的绑定this 对象

var o = {
    x : 1,//成员属性
    func : function() { console.log(this.x) },
    test : function() {
        var that = this;
        setTimeout(function() {
            that.func(); 
        }, 100);
    }
};

讲真var that = this;这种反人类操作实则蛋疼
当然也可以用function().bind(this)来在函数中获得this,但是贼麻烦
不过现在有了()=>{}就牛逼了

var o = {
    x : 1,
    func : function() { console.log(this.x) },
    test : function() {
        setTimeout(() => { this.func() }, 100);
    }
};

o.test();

现在this就能在内部函数里正确指向o这个对象了

上一篇 下一篇

猜你喜欢

热点阅读