JavaScriptにおける例外のキャッチ
例外をキャッチするには、
try-catch構文を使用します。
その構文は以下の通りです:
try {
// コード
} catch (error) {
// エラー処理
}
tryブロックには、例外が発生する可能性のある
コードを記述します。このコードの実行中に
例外が発生した場合、スクリプトはコンソールで
エラーを出して停止するのではなく、
catchブロック内のコードの実行を開始します。
このブロックでは、何らかの適切な方法で
エラーに対処する必要があります。例えば、
インターネット経由でデータを送信しようとして
インターネットが機能していない場合、
catchブロックで状況に対処できます:
例えば、ユーザーにメッセージを表示したり、
しばらくしてからデータの送信を再試行したり
することができます(インターネットが復旧しているかもしれません)。
一方、tryブロックの実行中に例外が
何も発生しなかった場合、有用なコードは
単に実行され、catchブロック内の
コードは実行されません。
例として、JSONの解析を試み、 不正な形式の場合に画面にメッセージを 表示してみましょう:
try {
let data = JSON.parse('{1,2,3,4,5}');
} catch (error) {
alert('JSONの解析操作を実行できません');
}
特定の文字列をローカルストレージに 書き込むコードがあります:
let str = 'ある文字列';
localStorage.setItem('key', str);
このコードをtry-catch構文で
囲んでください。
catchブロックでは、ストレージの
容量オーバーについてのメッセージを
表示してください。5MB未満の
文字列と、それより大きな文字列の場合で、
あなたのコードの動作を確認してください。
内部に配列が格納されているJSONがあります。
このJSONが正しい形式であれば、
その配列の要素をulリストとして
表示してください。JSONが不正な形式の場合は、
ページでエラーが発生したというメッセージを
画面に表示してください。