为了账号安全,请及时绑定邮箱和手机立即绑定

为什么这段代码会输出0呢?感觉setInterval()像被跳过了一样,好疑惑。求解

为什么这段代码会输出0呢?感觉setInterval()像被跳过了一样,好疑惑。求解

有只小跳蛙 2018-09-23 17:12:35
这段代码执行后,控制台直接输出0,没有先执行setInterval()中的匿名函数代码如下:        var div = document.getElementById("div");         div.onclick = function() {            var i = 0;            var timer = null;             timer = setInterval(function() {                 i++;                console.log(i)                if(i == 10) {                     clearInterval(timer);                 }             },300);            if(i == 0) {                 clearInterval(timer);                console.log(i);             }         }不得解呀!求大神解惑
查看完整描述

1 回答

?
扬帆大鱼

TA贡献1799条经验 获得超9个赞

延迟操作会被加入到任务/异步队列中,当主线走完才执行。

查看完整回答
反对 回复 2018-09-23
  • 1 回答
  • 0 关注
  • 651 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信