在javascript中使用OOP启动和停止计时器[重复]
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了在javascript中使用OOP启动和停止计时器[重复]相关的知识,希望对你有一定的参考价值。
这个问题在这里已有答案:
我想在javascript
中第一次使用面向对象的Javascript创建一个启动和停止计时器。我没有启动计时器的问题。问题是打败它,因为即使我使用clearInterval
或clearTimeout
,它也不会停止。请问我的代码有什么问题,并且我可以解决它吗?
function StopWatch() {
let timer = 0;
let starter = function() {
setInterval(function() {
++timer;
}, 1000);
// if(this.start) {
// throw new Error(`Timer already started`);
// }
console.log(timer);
};
let stopper = function() {
window.clearTimeout(starter);
console.log(timer)
};
this.start = starter;
this.stop = stopper;
}
const sw = new StopWatch();
console.log(sw);
谢谢。
答案
setInterval
函数返回一个引用,您将其传递给clearInterval
:
const interval;
//...
interval = setInterval(...);
//...
clearInterval(interval);
以上是关于在javascript中使用OOP启动和停止计时器[重复]的主要内容,如果未能解决你的问题,请参考以下文章
带有 pyserial RS232 的微型开关在 tkinter 线程中启动/停止计时器,但即使停止也继续运行