--- title: WindowOrWorkerGlobalScope.clearTimeout() slug: Web/API/clearTimeout tags: - API - HTML DOM - Method - Reference - WindowOrWorkerGlobalScope - clearTimeout - メソッド - リファレンス translation_of: Web/API/WindowOrWorkerGlobalScope/clearTimeout original_slug: Web/API/WindowOrWorkerGlobalScope/clearTimeout ---
{{APIRef("HTML DOM")}}

clearTimeout() は {{domxref("WindowOrWorkerGlobalScope")}} ミックスインのメソッドで、以前の {{domxref("WindowOrWorkerGlobalScope.setTimeout", "setTimeout()")}} の呼び出しによって以前に確立されたタイムアウトを解除します。

構文

scope.clearTimeout(timeoutID)

引数

timeoutID
解除したいタイマの ID です。 ID は setTimeout() の返値によって取得できます。

注目すべきは、 {{domxref("WindowOrWorkerGlobalScope.setTimeout", "setTimeout()")}} および {{domxref("WindowOrWorkerGlobalScope.setInterval", "setInterval()")}} で使用される ID のプールは共有されますので、技術的には clearTimeout() および {{domxref("WindowOrWorkerGlobalScope.clearInterval", "clearInterval()")}} は互いに交換できます。しかし、明確化のため、そのようなことは避けてください。

ウェブページのコンテキストで以下のスクリプトを実行し、ページを一度クリックしてください。1秒後にメッセージがポップアップします。1秒間に複数回ページをクリックしても、アラートは一度しか表示されません。

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

メモ

clearTimeout() へ妥当ではない ID を渡しても、何の効果もありません。例外は発生しません。

仕様書

仕様書 状態 備考
{{SpecName('HTML WHATWG', 'webappapis.html#dom-cleartimeout', 'WindowOrWorkerGlobalScope.clearTimeout()')}} {{Spec2("HTML WHATWG")}} 最新の仕様で、メソッドを WindowOrWorkerGlobalScope ミックスインに移動。
{{SpecName('HTML WHATWG', 'webappapis.html#dom-cleartimeout', 'clearTimeout()')}} {{Spec2('HTML WHATWG')}}

ブラウザーの互換性

{{Compat("api.WindowOrWorkerGlobalScope.clearTimeout")}}

関連情報