您好,欢迎来到步遥情感网。
搜索
您的当前位置:首页js-循环执行一个函数

js-循环执行一个函数

来源:步遥情感网
js-循环执⾏⼀个函数

js⾥的两个内置函数:setInterval()与setTimeout()提供了定时的功能,前者是每隔⼏秒执⾏⼀次,后者是延迟⼀段时间执⾏⼀次。javascript是⼀个单线程环境,定时并不是很准,遇到阻塞的操作会延迟,代码:

  

以上代码会每隔⼀分钟弹窗,如果不关闭弹窗。Js不会在下⼀秒执⾏这个函数。也就说,被阻塞了。除了setInterval()实现函数重复执⾏外,还可以⽤setTimeout()实现函数重复执⾏。是这么做的:

  

代码中⽤setTimeout()调⽤⾃⾝。这样函数执⾏⼀次,会⼀直延迟⼀段时间调⽤⾃⾝,实现了函数重复执⾏,是不是觉得很妙?看过许多⽹页上⽤到的jquery倒计时插件,都是⽤setTimeout()来重复执⾏函数。

setTimeout()执⾏顺序有个坑,看下⾯的代码,你觉得控制台输出的结果是什么:

  

答案是先输出2,再输出1。这跟我们的直觉是不⼀致的。当事件队列为空的时候,才执⾏SetTimeout()⾥⾯的代码。回到前⾯,js定时不准的问题,看到⼀篇靠谱的博客,⽤的是setTimeout()这种。可以参考后续博客,点下⾯的链接:

因篇幅问题不能全部显示,请点此查看更多更全内容

Copyright © 2019- obuygou.com 版权所有 赣ICP备2024042798号-5

违法及侵权请联系:TEL:199 18 7713 E-MAIL:2724546146@qq.com

本站由北京市万商天勤律师事务所王兴未律师提供法律服务