AggregateError
The AggregateError
object represents an error when several errors need to be wrapped in a single error. It is thrown when multiple errors need to be reported by an operation, for example by Promise.any()
, when all promises passed to it reject.
Constructor
AggregateError()
-
Creates a new
AggregateError
object.
Instance properties
AggregateError.prototype.message
-
Error message, defaults to
""
. AggregateError.prototype.name
-
Error name, defaults to
AggregateError
. AggregateError
:errors
-
An array that essentially reflects the iterable with which the
AggregateError
was instantiated; for example, if theAggregateError
was created using theAggregateError()
constructor, an array produced from whatever iterable was passed to the constructor as its first argument.
Examples
Catching an 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" ]
});
Creating an 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" ]
}
Specifications
Specification |
---|
ECMAScript Language Specification # sec-aggregate-error-objects |
Browser compatibility
BCD tables only load in the browser