This page was translated from English by the community. Learn more and join the MDN Web Docs community.

View in English Always switch to English

Глобальная функция clearTimeout()

Baseline Widely available

This feature is well established and works across many devices and browser versions. It’s been available across browsers since ⁨июль 2015 г.⁩.

Глобальный метод clearTimeout() отменяет таймаут, ранее установленный вызовом setTimeout().

Синтаксис

scope.clearTimeout(timeoutID)

Параметры

timeoutID

Идентификатор таймаута, который вы хотите отменить. Этот идентификатор был возвращён соответствующим вызовом 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.

Пример использования

Запустите приведённый ниже скрипт в контакте веб-страницы и кликните один раз. Вы увидите всплывающее сообщение через 1 секунду. Если вы щёлкните страницу несколько раз за одну секунду, предупреждение появится только один раз.

js
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();
};

Примечания

Передача недействительного ID clearTimeout() ни к чему не приведёт. Исключение не создается.

Спецификации

Specification
HTML
# dom-cleartimeout-dev

Совместимость с браузерами

Смотрите также