Open2

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

まさぴょん🐱まさぴょん🐱

ThrowとCatchとRethrowの違い

https://qiita.com/Yuuuuuui/items/1c794475e053e407ecd4

Error: causeについて

https://developer.mozilla.org/ja/docs/Web/JavaScript/Reference/Global_Objects/Error/cause

cause は Error インスタンスのデータプロパティで、エラーの元の原因を示します。
これはエラーをキャッチし、より具体的もしくは有用なエラーメッセージを再スローする際に、元のエラーにアクセスできるようにするために使用されます。

cause によるエラーの再スロー (catch内)

エラーをキャッチし、新しいメッセージで再スローする際などは、causeが役立ちます📝
次の例では、元のエラーを新しい Error のコンストラクターに渡しています。

try {
  connectToDatabase();
} catch (err) {
  throw new Error("Connecting to database failed.", { cause: err });
}

https://developer.mozilla.org/ja/docs/Web/JavaScript/Reference/Global_Objects/Error/cause#cause_によるエラーの再スロー