広告スペース(バナー)
🟨JavaScript レッスン
基本文法の基礎8
データ構造とオブジェクト指向8
構文の基本を深める9
関数とデータ構造の応用9
アルゴリズムとテストの基礎8
文字列・数値操作の応用8
実務で役立つ機能8
アルゴリズム練習問題10
レッスン 26 / 69

独自エラー(カスタムエラークラス)を作ろう

このレッスンでは、JavaScriptでカスタムエラークラスを作る方法を学び、エラーの種類を分かりやすく区別できるようになることを目標にします。「JavaScript カスタムエラー 作り方」「JavaScript Error extends」で調べている方向けです。

Errorクラスをextendsすると、自分だけの「専用のエラー」を作れます。エラーの種類ごとに名前を付けておくと、catchしたときにどんな問題が起きたか判別しやすくなります。「入力値が不正なエラー」と「通信に失敗したエラー」を区別できれば、それぞれに合った対応(メッセージ表示や再試行など)をコードで書き分けられるようになります。

サンプルコードでは、Errorを継承したValidationErrorというクラスを作り、this.nameに独自の名前を設定しています。checkAge関数の中で年齢が不正な場合にthrow new ValidationError(...)としてこのエラーを発生させ、catchブロックでe.namee.messageを確認しています。

初心者がよくつまずくのが、super(message)を呼び忘れて、エラーメッセージが正しく設定されないケースです。カスタムエラーを作るときも、通常のクラス継承と同じく親クラス(Error)のconstructorを必ず呼び出す必要があります。エラークラスを増やしすぎて種類が把握しきれなくなる点にも注意しましょう。

実際の開発現場では、規模の大きいアプリケーションほど、発生しうるエラーの種類ごとにカスタムエラークラスを用意しておくことが多くあります。エラーの種類によってログの出し方やユーザーへの表示メッセージを変えられるため、保守性の高いエラー処理を実現するための重要な設計手法です。

JavaScript
OUTPUT / 実行結果

💡 console.log() の内容が実行結果に表示されます。

🎯
ここまでできればゴール達成!
入力チェック専用の、分かりやすいエラーメッセージが作れるようになります。
広告スペース(バナー)
広告スペース(記事内)