且构网

分享程序员开发的那些事...
且构网 - 分享程序员编程开发的那些事

javascript - js setTimeout里this的问题

更新时间:2022-10-15 09:10:44

因为this的指向发生了变化,setTimeout(fn,delay) { fn(); } 实际上fn是一个参数传递的引用(fn=obj.cool),在fn=obj.cool这里,this的指向从obj变成了全局,(fn的调用者是window对象,所以this指向了window。

你可以看下我之前写的一篇博客里面具体提到了this的这种传参丢失:js中的this总结