教えて!GAS!

GASの基礎知識・書き方について紹介します。

Google Apps Scriptでのtry...catch...finally文の使い方

構文

構文は以下の通りです。

try {
  // ここにエラーが発生する可能性があるコードを記述します
} catch (エラー) {
  // エラーが発生した場合に実行されるコードを記述します
  console.log(エラー.message);
} finally {
  // エラーの有無にかかわらず、必ず実行されるコードを記述します
}

解説

try...catch...finallyは、例外が発生した場合の対応をするための処理となります。tryには、エラーが発生する可能性のあるコードを記述します。catchには、tryでエラーが発生した場合に実行されるコードを記述します。(エラー) は、エラー情報を含む変数です。エラーメッセージは エラー.message で取得できます。finallyには、tryやcatchの後に必ず実行されるコードを記述します。エラーが発生したかどうかに関係なく、後処理やリソースの解放などを行います。

プログラミング例

具体的なプログラミング例を紹介します。

function エラーテスト() {
  const 数字 = 10;
  try {
    数字 = 30;
  } catch (エラー) {
    // エラーが発生した場合に実行されるコード
    console.log("エラーが発生しました: " + エラー.message);
  } finally {
    // エラーの有無にかかわらず、必ず実行されるコード
    console.log("処理が完了しました。");
  }
}

上記のプログラムは、constを使って定数数字を宣言し、値として10を代入しています。constは一度値を設定すると、後で変更することができない定数となります。次にtry内で定数数字に新しい値30を代入しようとしていますが、これはエラーを引き起こします。エラーが発生した場合、そのエラーはcatch内で処理され、エラー.messageでエラー内容をログに出力しています。finallyは、エラーの有無にかかわらず「処理が完了しました。」というメッセージが表示されます。

まとめ

try...catch...finally文は、エラー処理を行うための構文です。tryでエラーが発生する可能性のあるコードを記述し、catchでそのエラーを処理します。finallyはエラーの有無に関係なく必ず実行されるコードを記述します。