javascript里的循环定时?

for(var i = 0; i < 5; i++) {
    setTimeout(function() {
        console.log(i);  
    }, 1000);
}

clipboard.png

执行结果我是能理解的5个5是OK的,但是我好奇第一个数字是怎么来的呢?

阅读 2.4k
2 个回答
let timer = setTimeout(function() {console.log(2)}, 2)
> undefined
console.log(timer)
> 225

setTimeout方法的返回值就是一个timeoutID,这里的225就是ID
具体参考这里window.setTimeout MDN

你不用管这个就行了,这个是因为你用chrome调试的时候chorme打印出来setTimeout的返回值。
就像这个

clipboard.png

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题