js 延迟函数

1.对于 setTimeout函数

普通函数: 100ms后执行时,this指向window对象。

function foo(){
    setTimeout(function(){
        console.log(this);
    },100);
}

var obj ={a:1};
foo.call(obj);

箭头函数: 

function foo(){
    setTimeout(()=>{
        console.log(this);
    },100);
}
var obj ={a:1};
foo.call(obj);

箭头函数:this是在定义时生效的。this总是指向函数定义生效时所在的对象。

原文地址:https://www.cnblogs.com/zxyun/p/9566371.html