JavaScriptの条件分岐で例外処理と組み合わせる方法を初心者向けに解説
生徒
「JavaScriptで条件分岐を書いたときに、エラーが出る場合があります。どうすれば安全に処理できますか?」
先生
「それはtry...catchを使って例外処理を組み合わせると安全です。条件分岐と例外処理を一緒に使うことで、エラーを回避しつつ処理を進められます。」
生徒
「例外処理って何ですか?」
先生
「例外処理とは、プログラムの実行中に発生するエラーをキャッチして、安全に処理を続ける仕組みです。JavaScriptではtryブロック内で処理を行い、エラーが起きたらcatchブロックで処理します。」
生徒
「具体的に条件分岐とどう組み合わせるのですか?」
先生
「では、簡単な例を見てみましょう!」
1. try...catchによる例外処理とは?
JavaScriptでは、予期せぬエラーが発生するとプログラムが止まってしまいます。これを防ぐためにtry...catchを使います。try内でエラーが発生すると、プログラムはcatchに飛び、エラー処理を行います。
2. 条件分岐と例外処理の基本例
次の例では、数値が正の値かどうかを条件分岐でチェックし、もし値が不正な場合は例外を発生させます。
function checkNumber(num) {
try {
if (num < 0) {
throw new Error("負の値は処理できません");
} else if (num === 0) {
console.log("値は0です");
} else {
console.log("値は正の数です");
}
} catch (error) {
console.log("エラーが発生しました:" + error.message);
}
}
checkNumber(5);
checkNumber(0);
checkNumber(-3);
値は正の数です
値は0です
エラーが発生しました:負の値は処理できません
ここでは、throwを使ってエラーを発生させています。条件分岐で値をチェックし、問題があれば例外処理で安全に対応しています。
3. なぜ条件分岐と例外処理を組み合わせるのか
条件分岐だけでは想定外の値や型のデータが来た場合にプログラムが止まることがあります。例外処理と組み合わせることで、ユーザー入力や外部データに安全に対応できるようになります。特にWebアプリケーションでは、エラーが起きてもページ全体が停止しないようにすることが重要です。
4. 複数の条件分岐とcatchの組み合わせ例
複雑な条件でも同様に安全に処理できます。例えば、文字列を数値に変換してチェックする場合です。
function processInput(input) {
try {
let num = Number(input);
if (isNaN(num)) {
throw new Error("数値に変換できません");
}
if (num < 0) {
throw new Error("負の数は不可");
}
console.log("入力値は " + num + " です");
} catch (error) {
console.log("入力エラー:" + error.message);
}
}
processInput("10");
processInput("-5");
processInput("abc");
入力値は 10 です
入力エラー:負の数は不可
入力エラー:数値に変換できません
このように、条件分岐で異なるケースを判定しつつ、例外処理でエラーを安全に処理できます。
5. 条件分岐と例外処理を使うときのポイント
- 条件分岐でエラーになりうるケースを先にチェックする
try...catchでエラーを安全に処理する- ユーザーや外部データを扱う場合は必ず例外処理を組み合わせる
- エラー内容を
console.logや通知で分かりやすく表示する
このポイントを押さえることで、JavaScriptの条件分岐と例外処理を組み合わせた安全でわかりやすいプログラムを書くことができます。