この記事の例は、JavaScript プログラミングにおける例外処理の方法をまとめたものです。参考のために皆さんと共有してください。詳細は次のとおりです:
前書き: 前回の記事「asp.net 開発における一般的なパブリック例外キャッチ メソッドの概要」では、asp.net サーバーでの例外処理についてまとめました。この記事は、前の記事に続き、クライアント側での JavaScript 例外処理について簡単に要約し、説明します。このようにして、asp.net のサーバー側とクライアント側の例外処理について予備的に理解しました。
1. 迷惑なスクリプトエラー
Lou Zhu は 13 をプレイすることが多いですが、一般的には深みがありません。時々、英語の一節を理解するのに苦労しましたが、最終的にはもう一度深くふりをすることができました:
インターネットで Web ページを閲覧しているときに、ランタイム エラーがあることを通知し、「デバッグしますか?」というメッセージが表示される JavaScript の警告ボックスを見たことがあるでしょう。このようなエラー メッセージは、開発者にとっては役に立つかもしれませんが、ユーザーにとっては役に立ちません。 . ユーザーはエラーを見つけると、Web ページから離れることがよくあります。
ねえ、上の段落がわかりませんか?上品かつ乱暴に言うと、nclouzhu は、Web ページを開いたときに、Web ページ上にスクリプト エラーが表示され、「デバッグしますか?」と尋ねられるなど、SB の問題に遭遇したことがあると理解しています。煩わしくありませんか? 通常のユーザーは習慣的に右上隅の赤いバツ印を選択することが多いですが、この種のプロンプト情報は開発者にとって非常に役立つ可能性があります。私かお、開発者が普通ではないことがわかりますか? !楼朱は誤解していたようだ。実際、原文の最終的な意図は、Web ページのスクリプト エラーは非常に深刻で、ユーザー エクスペリエンスは良くなく、潜在的なユーザーのグループを「怖がらせる」だろうということを伝えるものであることを理解するのは難しくありません。無駄に。
2. スクリプトエラーの対処方法
js では、通常、try...catch を通じて例外をキャッチして処理します。
try { //Run some code here } catch(e) { //Handle errors here }
実際のコードでは、次のように記述できます:
function test(){ var txt=""; try{ alert(aaa);//aaa是未声明的变量 } catch(e){ txt="There was an error on this page.\n\n"; txt+="Error message: " + e.message + "\n\n"; txt+="Error description: " + e.description + "\n\n"; txt+="Error name: " + e.name + "\n\n"; //alert(txt);//正式平台上可能需要注释掉该行 } }
もう 1 つの一般的なアプローチは、ウィンドウ オブジェクトの onerror イベントの一般的な処理メソッドを登録し、ページの
セクションに次のコードを配置することです。window.onerror=function(){ return true; }
3. JavaScript のエラー
(1)、Error オブジェクトの共通属性
例外をキャッチすると、通常、キャッチ時に Error オブジェクトのインスタンス e をスローします。e のいくつかの共通プロパティは次のとおりです。
属性の説明
description 例外の説明情報
message 異常記述情報
名前 例外の種類
数値 固有の例外コード
実際の開発では、通常、開発者は、対象を絞った方法で例外を処理するために、メッセージと名前の情報の入力を求められます。
(2)、エラーオブジェクトのタイプ
(1) の name 属性を通じて例外の種類を確認できます。 js には、次のような一般的な例外タイプがいくつかあります。
TypeError : 未宣言の変数など、予期しない型が見つかったときに発生します。 SyntaxError : サーバー側の登録スクリプト、括弧や引用符の欠落など、JS コードを解析する際の構文エラーによってトリガーされます。 ReferenceError: この例外は、無効な参照が使用された場合に発生します。 EvalError : eval 関数が誤って呼び出された場合に発生しますRangeError : 数値変数の値がその範囲を超えた場合に発生します
URIError : encodeURI() または decodeURI() 関数が誤って使用された場合に発生します。
実際の開発では、例外の種類ごとに異なる例外処理を行うことで、問題を効果的に発見し、ユーザー エクスペリエンスを向上させることができます。
この記事が JavaScript プログラミングのすべての人に役立つことを願っています。