美文网首页
setTimeout,setInterval的this指向

setTimeout,setInterval的this指向

作者: 一包 | 来源:发表于2019-08-27 08:56 被阅读0次

最近写代码遇到了setTimeout的this指向问题,这个小细节居然忘记了!!
setTimeout,setInterval传进的函数this会指向window,至于为啥,下次有空写写,这里先占个坑哈哈·~
解决问题:

  1. 使用bind(不能使用call,apply会立即执行这个函数)
setTimeout(fn.bind(this), 1000);
  1. 使用箭头函数,箭头函数会绑定父级的作用域,因此setTimeout的this指向定义时的作用域而不是运行时的作用域
setTimeout(()=>{
},1000)

相关文章

网友评论

      本文标题:setTimeout,setInterval的this指向

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