独自エラーのスロー | throwによるエラー発生 | JavaScript 超完全入門 基本から発展までのすべて

現在作成中です。今後加筆修正してまいります。
スポンサーリンク
スポンサーリンク

独自エラーのスローとは?

JavaScriptでは、throw文を使ってエラーを手動で発生させることができます。これは、標準のエラーだけでなく、独自のエラーメッセージや状況に応じたカスタムエラーを発生させたい場合に非常に便利です。独自エラーのスローにより、プログラムの予期しない状態を明確にし、エラーハンドリングをカスタマイズできます。

throw文の基本構文

throw文を使って、任意のエラーを発生させることができます。基本的な構文は次の通りです。

throw new Error("エラーメッセージ");

この構文では、Errorオブジェクトを使用して標準的なエラーをスローしますが、他の型やカスタムオブジェクトを使うこともできます。

独自エラーの例

独自エラーをスローすることで、特定の状況に応じたエラーメッセージを表示したり、カスタムエラーオブジェクトを使ってエラーハンドリングを行うことができます。以下に例を示します。

プログラムの解説

次のプログラムでは、特定の条件下で独自エラーをスローしています。

function validateAge(age) {
    if (age < 18) {
        throw new Error("年齢が18未満です。");
    }
    return "年齢は問題ありません。";
}

try {
    console.log(validateAge(16)); // 年齢が18未満のためエラーが発生
} catch (error) {
    console.error("エラーが発生しました: " + error.message);
}

このJavaScriptコードでは、validateAge関数内で年齢が18未満の場合にエラーをスローします。スローされたエラーはcatchブロックでキャッチされ、エラーメッセージがコンソールに表示されます。

独自エラーをスローする場面

独自エラーのスローは、次のような場面で役立ちます。

  • バリデーションの失敗: フォームデータやAPIリクエストのバリデーションで、入力が正しくない場合にエラーをスローします。
  • 不正な操作の検出: プログラムのロジックで不正な操作が行われた場合に、その状況を明確にするためにエラーをスローします。
  • 特定のエラーメッセージを出力: 標準のエラーメッセージでは不十分な場合に、カスタムのエラーメッセージを使用して状況を説明します。

エラーハンドリングの流れ

独自エラーをスローし、それをtry...catch構文でキャッチする流れは、以下の表で示すように行われます。

段階 処理
1 特定の条件が満たされた場合にthrow文を使用してエラーをスローします。
2 エラーがスローされた瞬間にtryブロック内の残りのコードはスキップされます。
3 catchブロックが実行され、エラーメッセージがキャッチされます。
4 必要なエラーメッセージや処理をcatchブロック内で実行します。

まとめ

JavaScriptではthrow文を使って、独自のエラーをスローし、プログラムのロジックに応じた柔軟なエラーハンドリングを行うことができます。これにより、特定の条件に基づいてエラーを明確にし、適切なメッセージや処理を実装することが可能です。try...catch構文と組み合わせて使用することで、予期しない状況にもスムーズに対応できるプログラムを構築できます。