では「生活に近い例」で try...catch...finally を説明してみますね。
例1:コーヒーメーカーを使うとき
try {
console.log("コーヒーメーカーの電源を入れる");
// コーヒーを淹れる処理(ここで水がなかったらエラー)
throw new Error("水が入っていません!");
} catch (error) {
console.log("エラー:", error.message);
console.log("水を入れてからやり直してください");
} finally {
console.log("電源を切る"); // エラーがあっても必ず実行
}
JavaScript👉 ポイント
try:コーヒーを淹れる(エラーが起きるかもしれない)catch:水がなかったら「水を入れてね」と教えるfinally:最後に必ず電源を切る(安全のため)
例2:料理をするとき
try {
console.log("フライパンを火にかける");
// 食材を入れる処理(冷蔵庫に食材がなかったらエラー)
throw new Error("卵がありません!");
} catch (error) {
console.log("エラー:", error.message);
console.log("買い物に行きましょう");
} finally {
console.log("火を止める"); // エラーがあっても必ず実行
}
JavaScript👉 ポイント
try:料理を始めるcatch:材料がなかったらエラーを処理finally:火を止める(安全のため必ずやる)
例3:車で出かけるとき
try {
console.log("車に乗って出発");
// 途中でガソリンが切れたらエラー
throw new Error("ガソリンがありません!");
} catch (error) {
console.log("エラー:", error.message);
console.log("ガソリンスタンドに行きましょう");
} finally {
console.log("車を駐車して鍵をかける"); // 必ずやる
}
JavaScript👉 ポイント
try:ドライブを始めるcatch:ガソリン切れなどのトラブルを処理finally:最後は必ず車を止めて鍵をかける
まとめ
try→ 普通にやりたいことcatch→ トラブルが起きたときの対応finally→ トラブルがあってもなくても最後に必ずやること(後片付けや安全対策)
こう考えると、finallyは「必ずやる後片付け」ってイメージしやすいですよね。
