throw文を使って独自の例外をスローする

プログラムの実行中にエラーが発生すると例外がスローされますが、 throw 文を使用すると任意のタイミングで例外をスローすることができます。ここでは throw 文を使って例外をスローする方法について解説します。

(Last modified: )

throw文の使い方

throw 文を使用すると例外をスローすることができます。書式は次のとおりです。

throw 例外の値

例外の値には通常 Error オブジェクトを指定しますが、数値や文字列といった任意の値を指定することもできます。 try...catch 文を使って例外がキャッチされた場合、ここで指定した例外の値が catch の括弧の中に記述した変数に格納されます。

次のサンプルをみてください。

function checkResult(point){
  try{
    if (point < 50){
      throw '不合格です';
    }

    console.log('得点' + point);
    console.log('合格です');
  } catch(e) {
    console.error(e);
  }
}

console.log('Start');

console.log(checkResult(82));
console.log(checkResult(40));

console.log('End');

>> Start
>> 得点82
>> 合格です
>> 不合格です
>> End

今回のサンプルでは関数内で引数として渡されてきた値をチェックし、 50 未満だった場合には例外をスローしています。今回は例外の値として文字列を指定しています。スローされた例外は try...catch 文でキャッチされて、 catch ブロックの中に記述された処理が実行されます。

-- --

throw 文を使って例外をスローする方法について解説しました。

( Written by Tatsuo Ikura )

Profile
profile_img

著者 / TATSUO IKURA

プログラミングや開発環境構築の解説サイトを運営しています。