1. ホーム
  2. javascript

[解決済み] JavaScriptの実行を停止させることは可能ですか?[重複しています]

2022-03-16 06:37:28

質問

何らかの方法で停止または終了させることは可能ですか? JavaScript ブラウザを再読み込みすることなく、これ以上JavaScriptベースの実行が起きないようにする方法はありますか?

私が考えているのは、JavaScriptに相当する exit() をPHPで作成します。

どのように解決するのですか?

簡単にお答えします。

throw new Error("Something went badly wrong!");

もっと知りたい人は、読み進めてください。


開発・デバッグのためにJavaScriptの実行を停止したいですか?

式は debugger; を実行すると、ページの実行が停止され、ブラウザのデベロッパー・ツールでその瞬間のページの状態を確認することができます。

アプリケーションを任意に、かつ意図的に停止させたいですか?

エラー時?

すべてを止めようとするのではなく、コードにエラー処理をさせましょう。について読む Exception をググってみてください。これらは、面倒なif/elseブロックを使わずに、エラー処理にジャンプさせる賢い方法です。

例外について読んだ後、コード全体を中断することが絶対に唯一の選択肢であると信じるなら、アプリケーションの "root" スコープ以外のどこにも "catch" されないような例外を投げることが解決策となります。

// creates a new exception type:
function FatalError(){ Error.apply(this, arguments); this.name = "FatalError"; }
FatalError.prototype = Object.create(Error.prototype);

// and then, use this to trigger the error:
throw new FatalError("Something went badly wrong!");

がないことを確認してください。 catch() をキャッチするブロック 任意の の例外を再スローするように変更します。 "FatalError" 例外 :

catch(exc){ if(exc instanceof FatalError) throw exc; else /* current code here */ }

タスクが完了したときや、任意のイベントが発生したとき?

return; は、現在の関数の実行フローを終了させます。

if(someEventHappened) return; // Will prevent subsequent code from being executed
alert("This alert will never be shown.");

return; は関数の中でのみ動作します。

どちらの場合も...

...非同期コードを停止する方法も知っておくとよいでしょう。それは clearTimeout clearInterval . 最後に、停止するには XHR ( Ajax ) のリクエストでは xhrObj.abort() メソッド( で利用できる jQuery ).