🕌
try,catch処理
next学んでいるakariです
よくtry,catchが、webサイト書くときに出てくるので、それのメモになります。バリデーションとかに使えるかな、、、
まずは構文を把握
try.js
try{
//例外が発生するかもしれない命令
} catch(例外情報を受け取る変数) {
//例外は発生した時の命令
} finally{
//例外の有無に関わらずに処理される命令
}
例えば
test.js
function parseJSON(jsonString) {
let parsedData;
try {
// JSON解析を試みる
parsedData = JSON.parse(jsonString);
} catch (error) {
// JSON解析中にエラーが発生した場合の処理
console.error('JSON解析エラー:', error.message);
parsedData = {}; // デフォルト値を設定
} finally {
// 最終的な処理(エラーの有無に関わらず実行される)
console.log('JSON解析処理が完了しました。');
}
return parsedData;
}
// 使用例
const jsonData = '{"name": "Taro", "age": 30}';
const result = parseJSON(jsonData);
console.log(result); // { name: 'Taro', age: 30 }
const invalidJsonData = '{name: "Taro", age: 30}';
const invalidResult = parseJSON(invalidJsonData);
// JSON解析エラーが発生し、デフォルト値の空オブジェクトが返される
console.log(invalidResult);
この例では、有効なJSON文字列と無効なJSON文字列の両方を解析しようとしています。有効なJSONの場合は正常に解析され、無効なJSONの場合はエラーがキャッチされ、デフォルト値が代わりに使用されます。どちらのケースでも、finallyブロックのメッセージが表示されることが保証されています。これにより、リソースの解放や後始末の処理が適切に行われることが保証されます。
Discussion