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

这段代码执行后,控制台直接输出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);
            }
        }

https://img1.mukewang.com/5ba759190001284802830255.jpg不得解呀!求大神解惑


有只小跳蛙
浏览 652回答 1
1回答

扬帆大鱼

延迟操作会被加入到任务/异步队列中,当主线走完才执行。
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

JavaScript