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
AggregateErrorobject.
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
AggregateErrorwas instantiated; for example, if theAggregateErrorwas 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