关于箭头函数的疑问

箭头函数的this指向定义时的对象。


    var obj = {a:'obj'};

    var fun = function(){

        setTimeout(()=>console.log(this),2000);

    };

    var fun1 = ()=>{

        setTimeout(()=>console.log(this),2100);

    };

    fun();

    fun.call(obj);

    fun1();

    fun1.call(obj);

有点不理解上述例子的输出,fun和fun1的输出都是window,fun.call输出obj,fun1.call输出window。

主要的疑问在于为什么fun1不可用绑定obj,fun可以绑定。


汪汪一只猫
浏览 481回答 1
1回答
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

JavaScript