1
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

JavaScriptのtry...catch構文について

Posted at

はじめに

JavaScriptには、コードの実行中に発生する可能性のあるエラーをキャッチして適切に処理するためのtry...catch構文があります。この構文を使用することで、エラーが発生してもプログラムがクラッシュせずに処理を続行できます。

基本的な構文

try {
    // エラーが発生する可能性のあるコード
} catch (error) {
    // エラーが発生した場合に実行されるコード
} finally {
    // (オプション)エラーの有無にかかわらず常に実行されるコード
}
  • tryブロック:エラーが発生する可能性のあるコードを記述します。
  • catchブロック:tryブロック内でエラーが発生した場合に実行されるコードを記述します。発生したエラーを引数として受け取ります。
  • finallyブロック(オプション):エラーの有無にかかわらず常に実行されるコードを記述します。

基本的な使用例

try {
    let result = someFunction(); // ここでエラーが発生するかもしれない
    console.log(result);
} catch (error) {
    console.error("An error occurred:", error.message); // エラーが発生した場合に実行される
} finally {
    console.log("This will always run regardless of an error."); // 常に実行される
}

try ブロック

tryブロック内には、エラーが発生する可能性のあるコードを記述します。例えば、外部APIの呼び出しやファイルの読み込みなど、エラーが発生するリスクがある処理をここに記述します。

catch ブロック

tryブロック内でエラーが発生した場合、このブロックが実行されます。catchブロックの引数として渡されるerrorオブジェクトは、発生したエラーの情報を含んでいます。一般的に、error.messageプロパティを使用してエラーメッセージを取得します。

finally ブロック(オプション)

finallyブロックは、エラーの有無にかかわらず常に実行されます。リソースのクリーンアップなど、必ず実行したい処理がある場合に使用されます。

ネストされた try...catch

try...catchブロックはネストして使用することもできます。これは、異なるレベルでのエラー処理が必要な場合に便利です。

try {
    try {
        // ここでエラーが発生する可能性がある
        someFunction();
    } catch (innerError) {
        console.error("Inner error:", innerError.message);
    }
    // ここで別のエラーが発生するかもしれない
    anotherFunction();
} catch (outerError) {
    console.error("Outer error:", outerError.message);
}

まとめ

  1. try...catchは、コードのエラー処理を行うための強力なツール
  2. tryブロック内にエラーが発生する可能性のあるコードを配置し、catchブロックでエラーを処理
  3. finallyブロックを使用して、エラーの有無にかかわらず常に実行される処理を記述できる
  4. ネストされたtry...catchブロックを使用して、異なるレベルでのエラー処理を行うことができる
1
1
2

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?