プログラムを作ると、思いもよらないエラーが出ることがあります。そんな時に役立つのが、エラーハンドリングと例外処理です。この記事では、TypeScriptでのエラーハンドリングと例外処理について、初学者向けにわかりやすく解説します。
まず、エラーハンドリングとは、プログラムが実行中に発生するエラーを適切に処理することを指します。エラーが発生した場合、プログラムが途中で止まってしまうのを防ぎ、ユーザーにわかりやすいメッセージを表示することが目的です。
例外処理は、エラーを発生させる可能性のあるコードを囲む方法です。TypeScriptでは、主にtry-catch文を使って例外処理を行います。具体的にどのように使うのか、次のセクションで見ていきましょう。
try-catch文を使うと、エラーが発生した時にどのように対処するかを指定できます。以下に簡単な例を示します。
function divide(a: number, b: number): number {
try {
// 0で割る場合はエラーをスロー
if (b === 0) {
throw new Error("0で割ることはできません。");
}
return a / b;
} catch (error) {
console.error("エラーが発生しました:", error.message);
return 0; // エラー発生時は0を返す
}
}
const result = divide(10, 0); // 0で割るとエラー
console.log("結果:", result);
このコードでは、divide関数が2つの数を割り算します。もし2番目の引数bが0なら、エラーをスローしてcatchブロックに飛びます。エラーメッセージを console.errorで表示し、結果として0を返します。
try-catch文には、finallyブロックを加えることもできます。finallyブロックは、エラーが発生したかどうかにかかわらず、必ず実行される部分です。以下の例を見てみましょう。
function processFile() {
try {
// ここでファイル処理をする
throw new Error("ファイルが見つかりません。");
} catch (error) {
console.error("エラー:", error.message);
} finally {
console.log("処理が完了しました。");
}
}
processFile();
この関数では、ファイル処理中にエラーが発生しますが、finallyブロックは必ず実行されるため、「処理が完了しました。」というメッセージが表示されます。
今回はTypeScriptにおけるエラーハンドリングと例外処理について解説しました。エラーを適切に処理することで、より安定したプログラムを作ることができます。