有一个需求
每间隔10秒向一个div中输出一段文字,当循环50次以后从0开始重新循环直到点击关闭按钮停止循环,怎么实现呢?
下面是我之前写的代码,但是cleartimeout没有生效,因为for循环又将settimeout激活了,又什么好的方法吗?
for (let i = 0, len = this.params.playTimes + 1; i < len; i++) {
this.playText = setTimeout(() => {
this.fillText(i);
var myDate = new Date();
console.log(i,myDate.toLocaleString());
}, i * this.params.speed * 1000);
}
// setTimeout在for中被重新激活 todo
clearTimeout(this.playText);
如果是要每隔十秒触发一次,50次后终止,为何不用setInterval呢?