javascript - setInterval 的变化间隔

标签 javascript

<分区>

除了删除它(clearInterval)并使用不同的值再次恢复之外,是否有一种方法可以在运行时修改使用 setInterval 设置的函数调用的间隔?

最佳答案

改用 setTimeout,另外这是异步 JS 的非阻塞方法:

var interval = 1000;

function callback() {
   console.log( 'callback!' );
   interval -= 100; // actually this will kill your browser when goes to 0, but shows the idea
   setTimeout( callback, interval );
}

setTimeout( callback, interval );

不要使用setInterval,因为在某些情况下(很多setInterval + 长回调,通常比超时长),由于队列大小有限,一些回调将被浏览器删除并且永远不会执行。只有 setTimeout 保证执行。

关于javascript - setInterval 的变化间隔,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15091059/

相关文章:

javascript - 如何创建链接供用户订阅我的 Google 日历

javascript - jsp 和 javascript 中请求属性的对象索引数组

javascript - Nashorn 的 RegExp 实现不支持 Unicode 类别吗?

javascript - 在链式调用中使用函数参数 - javascript

javascript - grunt-contrib-imagemin 任务上的 travis-ci 构建失败(无法准备好未定义的属性 'contents'

asp.net - 如何禁用来自 Aspx 文件(HTML、CSS)的警告

javascript - jQuery.grep 与 Array.filter 的性能对比

javascript - jQuery重复表行并将新ID分配给重复表行

javascript - 确认后如何重置表格

javascript - 使用 jquery 动态调整表大小