Window: clearTimeout() method

Baseline Widely available

This feature is well established and works across many devices and browser versions. It’s been available across browsers since July 2015.

The clearTimeout() method of the Window interface cancels a timeout previously established by calling Window.setTimeout().

If the parameter provided does not identify a previously established action, this method does nothing.

Syntax

js
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.

Return value

None (undefined).

Examples

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.

js
const alarm = {
  remind(aMessage) {
    alert(aMessage);
    this.timeoutID = undefined;
  },

  setup() {
    if (typeof this.timeoutID === "number") {
      this.cancel();
    }

    this.timeoutID = setTimeout(
      (msg) => {
        this.remind(msg);
      },
      1000,
      "Wake up!",
    );
  },

  cancel() {
    clearTimeout(this.timeoutID);
  },
};
window.addEventListener("click", () => alarm.setup());

Notes

Passing an invalid ID to clearTimeout() silently does nothing; no exception is thrown.

Specifications

Specification
HTML Standard
# dom-cleartimeout-dev

Browser compatibility

BCD tables only load in the browser

See also