美文网首页
for循环中settimemout()失效的解决办法

for循环中settimemout()失效的解决办法

作者: 雅雅的前端工作学习 | 来源:发表于2019-12-20 13:51 被阅读0次

出现此问题是因为timeout是一种类似于异步的函数,timeout中的函数还未执行时,for循环已经结束了,当指定的1秒过完,timeout中的函数才开始出发,而此时10个settimeout中的函数同时执行,故而同时打印出i,解决方法如下

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

相关文章

网友评论

      本文标题:for循环中settimemout()失效的解决办法

      本文链接:https://www.haomeiwen.com/subject/dfxinctx.html