ホームページ  >  記事  >  ウェブフロントエンド  >  jsの例外処理try...catchの使い方入門_javascriptスキル

jsの例外処理try...catchの使い方入門_javascriptスキル

WBOY
WBOYオリジナル
2016-05-16 17:22:00948ブラウズ

例外処理には JavaScript で try...catch を使用できます。例:

コードをコピー コードは次のとおりです。

try { foo.bar( );} catch (e) {alert(e.name ": " e.message);}

現在、発生する可能性のあるシステム例外は主に次の 6 種類です。

EvalError: eval() のコードの実行中にエラーが発生したときに発生します
RangeError: 数値変数またはパラメータが有効な範囲外にあるときに発生します
ReferenceError: 無効な参照の参照を解除するときに発生します
SyntaxError : eval() でのコードの解析中に構文エラーが発生した場合に発生します
TypeError: 変数またはパラメーターが有効な型ではない場合に発生します
URIError: encodeURI() または decodeURI() に無効なパラメーターが渡された場合に発生します

上記 6 つの例外オブジェクトはすべて、Error オブジェクトから継承します。これらはすべて、次の 2 つの構築メソッドをサポートしています:

new Error();new Error("Exception information");

手動で例外をスローする方法は次のとおりです:
コードをコピー コードは次のとおりです:

try { throw new Error("Whoops!");} catch (e) {alert (e.name ": " e.message);}

例外メッセージのタイプを判断したい場合は、catch で行うことができます:
コードをコピー コードは次のとおりです:

try { foo.bar();} catch (e) { if (einstanceofEvalError){alert(e.name":"e.message)} elseif(einstanceofRangeError){alert(e.name":"e.message); //etc }

エラーには次の主なプロパティがあります:

description: エラーの説明 (IE でのみ使用可能)。
fileName: エラー ファイル名 (Mozilla でのみ使用可能)。エラー行番号 (Mozilla でのみ使用可能)。
message: エラー メッセージ (IE での説明と同じ)。
number: エラー コード (IE でのみ使用可能)。 : Java のスタック トレースのようなエラー スタック情報 (Mozilla でのみ利用可能)

エラー メッセージをよりよく理解するために、キャッチ部分を次の形式に変更できます:



コードをコピー コードは次のとおりです: try { foo.bar();} catch (e) { if (browserType) != BROWSER_IE) {
alert("name: " e.name "message: " e.message "lineNumber: " e.lineNumber "fileName: " e.fileName "stack: " e.stack); } else {
alert("name: " e.name " errorNumber: " (e.number & 0xFFFF ) "message: " e.message");
} }


JavaScript の throw コマンドは実際には任意のオブジェクトをスローでき、このオブジェクトは catch で受け取られます。例:



コードをコピー
コードは次のとおりです: try { throw new Date( ); // 現在の時刻オブジェクトをスローします} catch (e) {alert(e.toLocaleString()) // 現在の時刻を表示するためにローカル形式を使用します}
声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。