Spec-Zone.ru › Web APIs

WorkerGlobalScope: метод reportError()

Примечание: Эта функция доступна только в Веб-воркерах.

Метод reportError() интерфейса WorkerGlobalScope может использоваться для сообщения об ошибках в консоль или обработчики событий глобальных областей, эмулируя неперехваченное исключение JavaScript.

Эта функция предназначена в первую очередь для пользовательских библиотек, которые отслеживают события или изменяют поведение обратных вызовов. Библиотеки могут использовать эту функцию для перехвата ошибок в коде обратного вызова и повторного их выброса в обработчик верхнего уровня. Это гарантирует, что ошибка в одном обратном вызове не помешает обработке других, одновременно обеспечивая доступность информации о стеке вызовов для отладки на верхнем уровне.

Синтаксис

reportError(throwable)

Параметры

throwable

Объект ошибки, например, TypeError.

Возвращаемое значение

None (undefined).

Исключения

TypeError

Метод вызван без аргумента ошибки.

Примеры

Тестирование функции с использованием:

if (typeof self.reportError === "function") {
  // function is defined
}

Следующий код демонстрирует, как создать и сообщить об ошибке, а также как её можно перехватить, используя свойство обработчика событий onerror или добавив слушатель для события error. Обратите внимание, что обработчик, назначенный для onerror, должен возвращать true, чтобы остановить распространение события.

const newError = new Error("Some error message", "someFile.js", 11);
self.reportError(newError);

self.onerror = (message, source, lineno, colno, error) => {
  console.error(`message: ${error.message}, lineno: ${lineno}`);
  return true;
};

self.addEventListener("error", (error) => {
  console.error(error.filename);
});

// Output
// > "message:Some error message, lineno: 11"
// > "someFile.js"

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

Спецификация
HTML
# runtime-script-errors

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

Рабочий стол Мобильные устройства
Chrome Edge Firefox Opera Safari Chrome Android Firefox для Android Opera Android Safari на iOS Samsung Internet WebView Android
reportError 95 95 93 81 15.4 95 93 67 15.4 17.0 95

См. также

  • WorkerGlobalScope
  • Window.reportError()
  • error событие
  • error событие
  • error событие

© 2005–2024 MDN contributors.
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.
https://developer.mozilla.org/en-US/docs/Web/API/WorkerGlobalScope/reportError

Spec-Zone.ru

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