我有一个简单的问题,但似乎找不到答案:一旦设置了setTimeout
,是否有任何方法可以查看它是否仍然被设置?
if (!Timer)
{
Timer = setTimeout(DoThis,60000);
}
据我所知,当你使用clearTimeout
时,变量仍保持其最后一个值。我刚刚查看的console.log
显示Timer
为“12”,无论超时是否设置或清除。我是否还需要将变量置为空,或者使用其他变量作为布尔变量,表示是的,我已经设置了此定时器?肯定有一种方法只是检查超时是否仍在运行……对吧?我不需要知道剩余时间,只需要知道它是否仍在运行。
setTimeout(yourFunction, 0)
比setTimeout('yourFunction()', 0)
更安全。 - cprcrackclearTimeout
不保证它不会占用内存吗?谢谢。 (抱歉,我知道这是很久以前的事了) - 1252748window.clearTimeout
,变量timer
仍将保留其值(一个计时器ID),因此有必要重置它。 - Benny Code