「ES6」箭头函数

作者: Floveluy | 来源:发表于2017-06-21 18:18 被阅读0次

    基本

    其实箭头函数就是以前的

    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这个对象了

    相关文章

      网友评论

        本文标题:「ES6」箭头函数

        本文链接:https://www.haomeiwen.com/subject/owutcxtx.html