--- title: WindowOrWorkerGlobalScope.clearTimeout() slug: Web/API/WindowOrWorkerGlobalScope/clearTimeout tags: - API - HTML DOM - Method - Reference - WindowOrWorkerGlobalScope - clearTimeout - メソッド - リファレンス translation_of: Web/API/WindowOrWorkerGlobalScope/clearTimeout ---
clearTimeout()
は {{domxref("WindowOrWorkerGlobalScope")}} ミックスインのメソッドで、以前の {{domxref("WindowOrWorkerGlobalScope.setTimeout", "setTimeout()")}} の呼び出しによって以前に確立されたタイムアウトを解除します。
scope.clearTimeout(timeoutID)
timeoutID
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")}}