Javascript - 告诉 setInterval 只触发 x 次?

标签 javascript

是否可以限制 setInterval 在 javascript 中触发的次数?

最佳答案

您可以调用clearInterval()x 个调用之后:

var x = 0;
var intervalID = setInterval(function () {

   // Your logic here

   if (++x === 5) {
       window.clearInterval(intervalID);
   }
}, 1000);

为了避免全局变量,上述的改进是:

function setIntervalX(callback, delay, repetitions) {
    var x = 0;
    var intervalID = window.setInterval(function () {

       callback();

       if (++x === repetitions) {
           window.clearInterval(intervalID);
       }
    }, delay);
}

然后您可以调用新的 setInvervalX() 函数,如下所示:

// This will be repeated 5 times with 1 second intervals:
setIntervalX(function () {
    // Your logic here
}, 1000, 5);

关于Javascript - 告诉 setInterval 只触发 x 次?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2956966/

相关文章:

javascript - 无法解析从其他 Node 程序作为参数传递的 json 字符串

javascript循环遍历消息

javascript - 嵌套选项不打印所有路径

javascript - ReactJS 上 NPM 启动时出错

javascript - 图像位于屏幕全宽的 div 内

javascript - 我想在数组下方显示单个数组中的所有模型属性值

javascript - AMP 脚本警告验证器

javascript - JavaScript中通过id获取元素

javascript - AngularJS:如何停止 ng-click 的事件传播?

javascript - 使用 Angular JS for WordPress JSON API 通过 JSON 操作数据