The clearTimeout()
method of the
WindowOrWorkerGlobalScope
mixin cancels a timeout previously established
by calling setTimeout()
.
Syntax
scope.clearTimeout(timeoutID)
Parameters
timeoutID
- The identifier of the timeout you want to cancel. This ID was returned by the
corresponding call to
setTimeout()
.
It's worth noting that the pool of IDs used by
setTimeout()
and
setInterval()
are shared, which
means you can technically use clearTimeout()
and
clearInterval()
interchangeably. However, for clarity, you should avoid doing so.
Example
Run the script below in the context of a web page and click on the page once. You'll see a message popping up in a second. If you click the page multiple times in one second, the alert only appears once.
var alarm = {
remind: function(aMessage) {
alert(aMessage);
this.timeoutID = undefined;
},
setup: function() {
if (typeof this.timeoutID === 'number') {
this.cancel();
}
this.timeoutID = window.setTimeout(function(msg) {
this.remind(msg);
}.bind(this), 1000, 'Wake up!');
},
cancel: function() {
window.clearTimeout(this.timeoutID);
}
};
window.onclick = function() { alarm.setup(); };
Notes
Passing an invalid ID to clearTimeout()
silently does nothing; no
exception is thrown.
Specifications
Specification | Status | Comment |
---|---|---|
HTML Living Standard The definition of 'WindowOrWorkerGlobalScope.clearTimeout()' in that specification. |
Living Standard | Method moved to the WindowOrWorkerGlobalScope mixin in the latest
spec. |
HTML Living Standard The definition of 'clearTimeout()' in that specification. |
Living Standard |
Browser compatibility
BCD tables only load in the browser