当立即执行函数碰到定时器

Posted justsmile2

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了当立即执行函数碰到定时器相关的知识,希望对你有一定的参考价值。

    // 循环瞬间执行完(几乎同时进入序列等待)后,瞬间释放执行console.log(e);不一定是0-9;
    for(var i = 0; i < 10; i++) {
        (function(e) {
            setTimeout(function() {
                console.log(e);  
            }, 1000);
        })(i);
    }

    // 接近自然,依次添加十个定时器,按顺序执行,一定是 0-9
    for (var i = 0; i < 10; i++) {
        setTimeout((function (e) {
            return function () {
                console.log(e);
            }
        })(i), 3000)
    }

    // 立即执行函数读参
    setTimeout((function(e) {
        return function() {
            console.log(e);
        }
    })(100), 3000)

    // 立即执行函数读变量
     var e=100;
    setTimeout((function(){
        return function() {
           console.log(e);
       }
    })(), 3000)

 

以上是关于当立即执行函数碰到定时器的主要内容,如果未能解决你的问题,请参考以下文章

500 JavaScript立即执行函数的4种不同写法,定时器

js中定时器setTimeout函数的问题?

关于定时器 setTimeout

第一次立即执行 setInterval 函数

定时器和延时器(利用定时器制作倒计时)

js定时器如何在执行完成以后往下执行