Open2
【Errorの取り扱い】エラーハンドリング、try/catch/throwなどについて

ThrowとCatchとRethrowの違い
Error: causeについて
cause は Error インスタンスのデータプロパティで、エラーの元の原因を示します。
これはエラーをキャッチし、より具体的もしくは有用なエラーメッセージを再スローする際に、元のエラーにアクセスできるようにするために使用されます。
cause によるエラーの再スロー (catch内)
エラーをキャッチし、新しいメッセージで再スローする際などは、causeが役立ちます📝
次の例では、元のエラーを新しい Error のコンストラクターに渡しています。
try {
connectToDatabase();
} catch (err) {
throw new Error("Connecting to database failed.", { cause: err });
}

エラーをチェインするライブラリと ES2022 Error Cause