AggregateError() constructor

Baseline Widely available

This feature is well established and works across many devices and browser versions. It’s been available across browsers since September 2020.

The AggregateError() constructor creates AggregateError objects.

Syntax

js
new AggregateError(errors)
new AggregateError(errors, message)
new AggregateError(errors, message, options)

AggregateError(errors)
AggregateError(errors, message)
AggregateError(errors, message, options)

Note: AggregateError() can be called with or without new. Both create a new AggregateError instance.

Parameters

errors

An iterable of errors, may not actually be Error instances.

message Optional

An optional human-readable description of the aggregate error.

options Optional

An object that has the following properties:

cause Optional

A property indicating the specific cause of the error. When catching and re-throwing an error with a more-specific or useful error message, this property can be used to pass the original error.

Examples

Creating an AggregateError

js
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-constructor

Browser compatibility

BCD tables only load in the browser

See also