JavaScript/AggregateError
表示
概要
[編集]AggregateError
オブジェクトは、複数のエラーをまとめて処理するために使用されるエラーオブジェクトです。このオブジェクトは、通常のError
オブジェクトを拡張し、errors
プロパティを持つ点が特徴です。これにより、エラーの集合を保持し、複数のエラーを1つのオブジェクトで扱うことができます。
コンストラクタ
[編集]AggregateError(errors, message [, options])
[編集]AggregateError
コンストラクタは、新しいAggregateError
オブジェクトを作成および初期化します。
引数
[編集]errors
:- エラーの反復可能オブジェクト(例: 配列)。これには、エラーや他の値が含まれます。
message
:- エラーに関連付けられる説明メッセージ(省略可能)。
options
:- エラーの原因(
cause
プロパティ)を設定するオプションオブジェクト(省略可能)。
- エラーの原因(
動作
[編集]- 新しい
AggregateError
オブジェクトを作成します。 message
が指定されている場合は、文字列に変換してmessage
プロパティに設定します。options
が指定されている場合は、cause
プロパティを設定します。errors
からエラーリストを作成し、errors
プロパティに設定します。
プロパティ
[編集]AggregateError.prototype
[編集]AggregateError
のプロトタイプオブジェクトです。このオブジェクトには以下のプロパティが定義されています。
AggregateError.prototype.constructor
[編集]このプロパティはAggregateError
コンストラクタを指します。
AggregateError.prototype.message
[編集]初期値は空文字列(""
)です。このプロパティにはエラーに関する説明が含まれます。
AggregateError.prototype.name
[編集]初期値は"AggregateError"
です。このプロパティはエラーの名前を表します。
AggregateError.prototype.toString()
[編集]エラーを文字列として表現します。このメソッドは、エラーのname
およびmessage
プロパティを使用して出力を生成します。
errors
[編集]AggregateError
インスタンスのプロパティで、エラーのリストを保持します。これは、元のerrors
引数を配列として保存します。
使用例
[編集]基本的な例
[編集]try { throw new AggregateError([new Error("エラー1"), new Error("エラー2")], "複数のエラーが発生しました"); } catch (e) { console.log(e.message); // "複数のエラーが発生しました" console.log(e.errors); // [Error: エラー1, Error: エラー2] }
cause
オプションの使用例
[編集]const err = new AggregateError([new Error("エラー1")], "複数のエラー", { cause: "サーバー障害" }); console.log(err.cause); // "サーバー障害"