Dieser Inhalt wurde automatisch aus dem Englischen übersetzt, und kann Fehler enthalten. Erfahre mehr über dieses Experiment.

View in English Always switch to English

AggregateError

Baseline
Weitgehend verfügbar

Diese Funktion ist gut etabliert und funktioniert auf vielen Geräten und in vielen Browserversionen. Sie ist seit September 2020 browserübergreifend verfügbar.

Das AggregateError-Objekt stellt einen Fehler dar, wenn mehrere Fehler in einem einzigen Fehler zusammengefasst werden müssen. Es wird ausgelöst, wenn eine Operation mehrere Fehler melden muss, beispielsweise Promise.any(), wenn alle übergebenen Promises abgelehnt werden.

Im Gegensatz zu SuppressedError stellt AggregateError eine Liste voneinander unabhängiger Fehler dar. SuppressedError hingegen stellt einen Fehler dar, der bei der Behandlung eines anderen Fehlers aufgetreten ist.

AggregateError ist eine Unterklasse von Error.

Konstruktor

AggregateError()

Erstellt ein neues AggregateError-Objekt.

Instanzeigenschaften

Erbt außerdem Instanzeigenschaften von der übergeordneten Klasse Error.

Diese Eigenschaften sind auf AggregateError.prototype definiert und werden von allen AggregateError-Instanzen gemeinsam genutzt.

AggregateError.prototype.constructor

Die Konstruktorfunktion, die das Instanzobjekt erstellt hat. Für AggregateError-Instanzen ist der Anfangswert der Konstruktor AggregateError.

AggregateError.prototype.name

Gibt den Namen des Fehlertyps an. Für AggregateError.prototype.name ist der Anfangswert "AggregateError".

Diese Eigenschaften sind eigene Eigenschaften jeder AggregateError-Instanz.

errors

Ein Array mit den zusammengefassten Fehlern.

Instanzmethoden

Erbt Instanzmethoden von der übergeordneten Klasse Error.

Beispiele

Einen AggregateError abfangen

js
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" ]
});

Einen AggregateError erstellen

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" ]
}

Spezifikationen

Spezifikation
ECMAScript® 2027 Language Specification
# sec-aggregate-error-objects

Browser-Kompatibilität

Siehe auch