JavaScript エラー処理 try..catch...finally + は throw+TypeError+RangeError をカバーします

JavaScript エラー処理 try..catch...finally + は throw+TypeError+RangeError をカバーします

1. 目的

通常、エラーが発生すると、スクリプトは直ちに停止し、コンソールにエラーを出力します。

このステートメントを使用すると、エラーをキャッチして適切な操作を実行し、プログラムの実行を継続できます。

2. 文法

試す {
  // コード...
} キャッチ (エラー) {
   //err はエラーに関する詳細情報を持つオブジェクトです // エラー キャプチャ。上記のコードはエラーが報告されるとこのコード ブロックに移動し、実行を停止しません} finally {
   //例外がスローされたかキャッチされたかに関係なく、常に実行されます}

この文はネストできる

3. 練習する

Catchすべてのerrorをキャッチします。

処理方法がわからない場合は、 throw err

throw演算子はerrorオブジェクトを生成します。

ユーザー定義の例外をスローするために使用されます。現在の関数の実行は停止され (throw の後のステートメントは実行されません)、制御は呼び出しスタックの最初の Catch ブロックに渡されます。呼び出し元関数に catch ブロックがない場合、プログラムは終了します。

例:

throw "Error1"; // 文字列値を持つ例外をスローします throw 4; // 整数値 4 を持つ例外をスローします /*JavaScript には、Error、SyntaxError、ReferenceError、TypeError など、多くの組み込みの標準エラー コンストラクターがあります。これらを使用してエラー オブジェクトを作成することもできます。 */
let error = new Error("いろいろなことが起こります o_O");
alert(error.name); // エラー
alert(error.message); // いろいろなことが起こります o_O
//json例外を試す{
  JSON.parse("{ 不正なJSON o_O }");
} キャッチ(e) {
  alert(e.name); // 構文エラー
  alert(e.message); // JSON の位置 2 に予期しないトークン b があります
}

補充:

try ブロック内のコードは、 TypeErrorRangeErrorSyntaxError 3 種類の例外をスローする可能性があります。

これら 3 つの意味を知らない生徒もいるかもしれないので、ここで説明しておきます。

これらは両方ともグローバル オブジェクトです。グローバル オブジェクト自体にはメソッドは含まれていませんが、プロトタイプ チェーンを通じていくつかのメソッドを継承します。

エラーの種類を判別するには、instanceof 演算子を使用します。

  • TypeError : (型エラー) 値の型が期待される型でない場合に発生するエラーを表すために使用されるオブジェクト
  • RangeError : オブジェクトは、値が許容範囲または設定内にない場合にエラーを示します。
  • SyntaxError : Javascript言語がコードを解析するとき、Javascriptエンジンは文法仕様に準拠していないトークンまたはトークンシーケンスを見つけ、

例:

catch (e){//以下はこのオブジェクトのパラメータプロパティです console.log(e instanceof TypeError); // true
  console.log(e.message); // "このエラーについて説明してください"
  console.log(e.name); // "TypeError"
  console.log(e.fileName); // "例外の原因となったコードが配置されているファイルの名前"
  console.log(e.lineNumber); // 例外を引き起こしたコードの行番号}

これで、JavaScript エラー処理 try..catch...finally と throw+TypeError+RangeError のカバーに関する記事は終了です。JavaScript エラー処理に関するより関連性の高いコンテンツについては、123WORDPRESS.COM で以前の記事を検索するか、以下の関連記事を引き続き参照してください。今後とも 123WORDPRESS.COM をよろしくお願いいたします。

以下もご興味があるかもしれません:
  • よくあるJSエラーと解決策の詳細な説明
  • javascript エラーオブジェクトのエラー処理

<<:  SSH ポート転送とは何ですか?何の役に立つの?

>>:  CSSは高さを設定せずにdivを完全に中央に配置することを実現します

推薦する

Docker Composeでコンテナ管理の問題を解決する

Docker の設計では、コンテナは 1 つのアプリケーションのみを実行します。しかし、現在のアプリ...

Alibaba Cloud SSHリモート接続がしばらくすると切断される問題を解決

問題の再現Alibaba Cloud Server は、Finalshell リモート接続を使用して...

CSS3はブラウザのスクロールバーのスタイルを変更します

注意: この方法は、Webkit ベースのブラウザにのみ適用されます。ブラウザのスクロールバーが広す...

Centos7 システム上の nginx サーバーで Phalcon 環境を構築する方法の詳細な説明

この記事では、centos7 システムの nginx サーバーの下に phalcon 環境を構築する...

JavaScriptアップロードファイル制限パラメータケースの詳細な説明

プロジェクトシナリオ: 1. アップロードファイルの制限関数: 1. フロントエンド操作による異常な...

CentOS に Docker をインストールし、Springboot で Docker をリモート公開する方法

目次1. CentOS7.0へのJDK1.8のインストール2. Dockerのインストール3.Doc...

node.js チュートリアルの Util モジュールの例の詳細な説明

目次タイプ判定から始める厳格な平等エラーファーストと約束デバッグと出力タイプ判定から始めるJavaS...

MySQL の Like の概念と使用法の説明

Like は中国語で「好き」を意味しますが、MySQL データベースに適用される場合、Like は、...

Docker で Maven プロジェクトをより速くビルドする

目次I. 概要2. 従来の多段階イメージ構築3. Buildkitを使用してイメージをビルドする4....

グリッドはページのレイアウトプランです

<br /> 英語原文: http://desktoppub.about.com/od/...

JavaScript で文字列内の最長の単語を見つける 3 つの方法 (推奨)

この記事は、Free Code Camp の基本アルゴリズム スクリプト「文字列内の最長の単語を見つ...

Vueは、選択した月に応じて日付に対応する曜日を動的に表示します。

私たち謙虚なプログラマーは、今でもこう歌わなければなりません。「あなたも私も、この世に生まれて、一日...

Win10 MySQLでCSVをエクスポートする2つの方法

Win10 で csv をエクスポートする方法は 2 つあります。1 つ目はツールを使用することです...

ボタンをクリックしてテキストを入力ボックスに変換し、保存をクリックしてテキスト実装コードに変換します。

ボタンをクリックしてテキストを入力ボックスに変換し、保存をクリックしてテキスト実装コードに変換します...

SQL ステートメント実行の詳細な説明 (MySQL アーキテクチャの概要 -> クエリ実行プロセス -> SQL 解析順序)

序文:私はずっと、SQL 文がどのように、どのような順序で実行されるのかを知りたいと思っていました。...