js实现定时器的开启与暂停功能

定时器类

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
class myTime{
/**
* @param {Function} cb 回调函数
* @param {Number} sec 执行间隔时间ms
*/
constructor(cb,sec){
this.cb = cb;
this.sec = sec;
this.timer = null;
}

// 运行
run(){
this.timer = setInterval(this.cb , this.sec);
}

//暂停
stop(){
clearInterval(this.timer);
this.timer = null;
}
}

使用场景:页面倒计时

1
2
3
4
5
6
7
8
9
10
11
12
let count = 10;
let timer = new myTime(()=>{
if(count === 0){
timer.stop();
timer = nul;;
}else{
console.log(count);
count--;
}
},1000)

timer.run()

可以实现页面从10倒计时到1

文章作者: qinwei
文章链接: https://qw-null.github.io/2022/08/15/js实现定时器的开启与暂停功能/
版权声明: 本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 QW's Blog