序文: 実際のプログラミングでは、例外(コードエラー)をスローすることは最も普通のことですが、例外の処理方法は人によって異なります。例外に遭遇すると、通常は例外を解決したり、何らかの方法で例外を隠したりしますが、 この記事ではJavaScript処理を紹介します 1. コンセプト1.1 エラーと例外とは何ですか?いわゆるエラーは、プログラミング プロセスにおいてプログラムが正常に実行されなくなる状態であり、例外とも呼ばれます。 1.2 異常の分類実際の開発では、例外は主に次の 3 種類に分けられます。
2. 例外処理2.1try...catch ステートメントtry...catch ステートメントは、JavaScript で例外を処理する標準的な方法です。構文構造は次のとおりです。 試す { // テスト用のコードブロック } キャッチ(エラー) { // エラーを処理するコードブロック } パラメータ:
サンプルコードは次のとおりです。 試す { // エラーがあるかどうかをテストするために使用されるコードブロック console.log(v) // この時点では v は定義されていないため、例外がスローされます } catch (error) { // 例外をスローすると、このコード ブロックが実行されます console.log('上記のコードにはエラーがあります') }
2.2 finally文
構文構造は次のとおりです。 試す { // テスト用のコードブロック } キャッチ(エラー) { // エラーを処理するコードブロック } ついに { // try catch の結果に関係なく実行されるコード ブロック} サンプルコードは次のとおりです。 // 変数v 試す { // エラーがあるかどうかをテストするために使用されるコードブロック console.log(v) // この時点では v は定義されていないため、例外がスローされます } catch (error) { // 例外をスローすると、このコード ブロックが実行されます console.log('上記のコードにはエラーがあります') ついに console.log('私は処刑されなければならない') } 2.3throw文
構文の形式は次のとおりです。 スロー式;
例外をスローするには、 サンプルコードは次のとおりです。 // "error" をスローします // error を出力します false をスローします // false を出力します もちろん、 3. エラーオブジェクトエラー オブジェクトは、Error コンストラクターを通じて作成できます。実行時エラーが発生すると、 Error オブジェクトは主に、ユーザー定義の例外の基本オブジェクトとして使用されます。 Error オブジェクトに加えて、JavaScript では次の定義済みのエラー タイプも提供されます。
エラーには主に 2 つのプロパティがあります。
Error オブジェクトのインスタンスを作成するための構文形式は次のとおりです。 新しいエラー([メッセージ]) パラメータ: 他の定義済み型の作成構文はエラーと同じです。 3.1 カスタム例外タイプ
まず、カスタム例外タイプ用に 以下のように表示されます。 サンプルコードは次のとおりです。 関数 MyError(メッセージ) { this.message = メッセージ this.name = 'MyError' /* * Error.captureStackTrace(targetObject[, コンストラクターOpt]) * パラメーター targetObject -> オブジェクトを表します * パラメーターconstructorOpt -> オブジェクトのコンストラクターを表します * targetObject に .stack プロパティを作成し、呼び出しにより Error.captureStackTrace() が呼び出された場所の文字列が返されます。 */ Error.captureStackTrace(これ、MyError) } MyError.prototype = 新しいError() MyError.prototype.constructor = MyError // * node.js 環境では、new Error は直接例外をスローします。これは node.js 環境には適用されません。 // function MyError(message) { // this.name = 'MyError'; // this.message = message || 'デフォルトメッセージ'; // this.stack = (新しい Error()).stack; // } // MyError.prototype = Object.create(Error.prototype); // MyError.prototype.constructor = MyError; 試す { 新しいMyError('wrong')をスローします } キャッチ (e) { コンソール.log(e) } 結論: JavaScript での例外処理は、実際の開発では通常、次の 2 つのことだけを行います。
JavaScript の高度なカスタム例外に関するこの記事はこれで終わりです。より関連性の高い JavaScript カスタム例外コンテンツについては、123WORDPRESS.COM の以前の記事を検索するか、以下の関連記事を引き続き参照してください。今後とも 123WORDPRESS.COM をよろしくお願いいたします。 以下もご興味があるかもしれません:
|
<<: MYSQL メタデータ ロック (MDL ロック) の理論とロック タイプ テスト
>>: CSS 属性値 clear:right が機能しない理由の詳細
1. GitLabイメージをダウンロードする docker pull gitlab/gitlab-c...
記述した Dockerfile の内容は次のとおりです。 Python:3.6.8 から pip i...
Openlayers は、WebGIS クライアント向けのモジュール式で高性能かつ機能豊富な Jav...
オブジェクトの hasOwnProperty() メソッドは、オブジェクトに特定の独自の (継承され...
目次序文1. Iceraven ブラウザ (Firefox) (Android) 2. (アンドロイ...
zip インストール パッケージをダウンロードします。 MySQL8.0 For Windows z...
目次データベースにインデックスが必要なのはなぜですか?インデックスが B+Tree データ構造を使用...
方法1: CSSオーバーフロー省略を使用して解決する解決策は次のとおりです。 CSSコード: ディス...
NginxのGeoモジュールの紹介geo ディレクティブは、ngx_http_geo_module ...
目次1. psutilパッケージをインストールする次に、オペレーティングシステム内のすべてのサービス...
マスタースレーブ同期 (マスタースレーブレプリケーションとも呼ばれる) は、マスタースレーブデータの...
最初のステップ: VMwareで、「編集」-「仮想ネットワークエディタ」をクリックします。下図に示す...
この記事では、MySQL 学習ノートの select ステートメントの完全な使用方法を例を使用して説...
目次序文Lua スクリプトnignx.conf の設定Dockerfileの設定序文データベースやそ...
この記事では、参考までに、ズームインとズームアウトのドラッグ機能を実現するためのVueの具体的なコー...