【问题标题】:How to run every instance of for loop after 5 seconds?如何在 5 秒后运行 for 循环的每个实例?
【发布时间】:2020-05-07 15:07:29
【问题描述】:

如何在 5 秒后运行每个 for 循环实例?

我尝试了以下代码,但没有成功

setTimeout(function(){
    for (var i = 1; i < 15; i++) {
        alert("Okay user"+i);
    }
},3000)

【问题讨论】:

    标签: javascript loops for-loop


    【解决方案1】:

    这是你的意思吗?

    for (var i = 1; i < 15; i++) {
        setTimeout(function(){
            alert("Okay user"+i);
        }, i * 5000)
    }
    
    

    【讨论】:

    • 不,此代码不起作用。循环的每个实例在 5 秒后运行,但在循环的每个实例上,警报函数都会打印最后一个元素 15。我希望警报函数打印 i 的当前值。
    【解决方案2】:
    (function myLoop(i) {
      setTimeout(function() {
        console.log('hello user'+i);             
       if (i++ < (15 - 1)) myLoop(i);  
      }, 3000)
    })(0);   
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2022-10-14
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-10-17
      相关资源
      最近更新 更多