AggregateError

AggregateError オブジェクトは、複数のエラーを1つのエラーにまとめる必要があるときのエラーを表します。これは一つの操作で複数のエラーを報告する必要があるときに発生します。例えば Promise.any() において、渡されたすべてのプロミスが拒否された場合などです。

コンストラクター

AggregateError()
新しい AggregateError オブジェクトを生成します。

インスタンスプロパティ

AggregateError.prototype.message
エラーメッセージで、既定値は "" です。
AggregateError.prototype.name
エラー名で、既定値は AggregateError です。

AggregateError の捕捉

Promise.any([
  Promise.reject(new Error("some error")),
]).catch(e => {
  console.log(e instanceof AggregateError); // true
  console.log(e.message);                   // "All Promises rejected"
  console.log(e.name);                      // "AggregateError"
  console.log(e.errors);                    // [ Error: "some error" ]
});

AggregateError の生成

try {
  throw new AggregateError([
    new Error("some error"),
  ], 'Hello');
} catch (e) {
  console.log(e instanceof AggregateError); // true
  console.log(e.message);                   // "Hello"
  console.log(e.name);                      // "AggregateError"
  console.log(e.errors);                    // [ Error: "some error" ]
}

仕様書

ブラウザーの互換性

BCD tables only load in the browser

関連情報