Spec-Zone.ru › JavaScript

AggregateError

Базовый уровень Широко доступно

Эта функция хорошо зарекомендовала себя и работает на многих устройствах и версиях браузеров. Она доступна во всех браузерах с сентября 2020 года.

Объект AggregateError представляет ошибку, когда несколько ошибок необходимо объединить в одну. Она выбрасывается, когда операция должна сообщить о нескольких ошибках, например, с помощью Promise.any(), когда все переданные ей промисы отклоняются.

По сравнению с SuppressedError, AggregateError представляет собой список несвязанных ошибок, тогда как SuppressedError представляет ошибку, произошедшую во время обработки другой ошибки.

AggregateError является подклассом Error.

Конструктор

AggregateError()
Создает новый объект AggregateError.

Свойства экземпляра

Также наследует свойства экземпляра от своего родителя Error.

Эти свойства определены в AggregateError.prototype и являются общими для всех экземпляров AggregateError.

AggregateError.prototype.constructor
Функция-конструктор, создавшая объект экземпляра. Для экземпляров AggregateError начальным значением является конструктор AggregateError.
AggregateError.prototype.name
Представляет имя типа ошибки. Для AggregateError.prototype.name начальным значением является "AggregateError".

Эти свойства являются собственными свойствами каждого экземпляра AggregateError.

errors
Массив, представляющий ошибки, которые были агрегированы.

Методы экземпляра

Наследует методы экземпляра от своего родителя Error.

Примеры

Перехват 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" ]
});

Создание 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" ]
}

Спецификации

Спецификация
Спецификация языка ECMAScript® 2027
# sec-aggregate-error-objects

Совместимость с браузерами

Десктопные Мобильные Серверные
Chrome Edge Firefox Opera Safari Chrome Android Firefox for Android Opera Android Safari on iOS Samsung Internet WebView Android WebView on iOS Bun Deno Node.js
AggregateError
85
85
79
71
14
85
79
60
14
14.0
85
14
1.0.0
1.2
15.0.0
AggregateError
85
85
79
71
14
85
79
60
14
14.0
85
14
1.0.0
1.2
15.0.0
errors
85
85
79
71
14
85
79
60
14
14.0
85
14
1.0.0
1.2
15.0.0
serializable_object
98AggregateError сериализуется в тип Error, без дополнительных свойств.
98AggregateError сериализуется в тип Error, без дополнительных свойств.
103AggregateError сериализуется в тип AggregateError, со свойствами name, message, cause, и errors.
84AggregateError сериализуется в тип Error, без дополнительных свойств.
17
98AggregateError сериализуется в тип Error, без дополнительных свойств.
103AggregateError сериализуется в тип AggregateError, со свойствами name, message, cause, и errors.
68AggregateError сериализуется в тип Error, без дополнительных свойств.
17
18.0AggregateError сериализуется в тип Error, без дополнительных свойств.
98AggregateError сериализуется в тип Error, без дополнительных свойств.
17
?
Нет
Нет

Смотрите также

  • Полифил AggregateError в core-js
  • es-shims полифил AggregateError
  • Error
  • Promise.any

© 2005–2025 MDN contributors.
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.
https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/AggregateError

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API