[英]how create a continuous loop that calls a function using a random generated interval
我想每隔指定的秒执行一个函数,它应该永远循环。 函数完成后,我想使用2到5(代表秒)之间的随机生成值来启动新的setTimeout。
也许很难解释,但是..
这是我到目前为止所拥有的。
function Start() {
let count = $("section.mosaic").find("a.item").length;
ChangePic();
setTimeout(function () {
let interval = CREATOR.PUB.Utility.randomInterval(2, 5);
console.log(interval);
}, 3000);
function ChangePic() {
}
}
将间隔代码移到ChangePic
以便它在完成时可以自行调用。
function Start() {
let count = $("section.mosaic").find("a.item").length;
ChangePic();
function ChangePic() {
// do stuff here
let interval = CREATOR.PUB.Utility.randomInterval(2, 5);
setTimeout(ChangePic, interval * 1000);
}
}
请注意,这将在“ Start
运行时立即调用一次ChangePic
,此后将开始随机间隔。 如果还需要延迟初始执行,则可以复制超时代码并运行它,而不用调用ChangePic();
,或将其移到同时在Start
和ChangePic
调用的帮助函数中。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.