files/en-us/web/api/workerglobalscope/rejectionhandled_event/index.md
{{APIRef("DOM")}}{{AvailableInWorkers("worker")}}
The rejectionhandled event is sent to the script's global scope (typically {{domxref("WorkerGlobalScope")}}) whenever a rejected {{jsxref("Promise")}} is handled late, i.e., when a handler is attached to the promise after its rejection had caused an {{domxref("WorkerGlobalScope.unhandledrejection_event", "unhandledrejection")}} event.
This can be used in debugging and for general application resiliency, in tandem with the unhandledrejection event, which is sent when a promise is rejected but there is no handler for the rejection at the time.
Use the event name in methods like {{domxref("EventTarget.addEventListener", "addEventListener()")}}, or set an event handler property.
addEventListener("rejectionhandled", (event) => { })
onrejectionhandled = (event) => { }
A {{domxref("PromiseRejectionEvent")}}. Inherits from {{domxref("Event")}}.
{{InheritanceDiagram("PromiseRejectionEvent")}}
You can use the rejectionhandled event to log promises that get rejected to the console, along with the reasons why they were rejected:
self.addEventListener("rejectionhandled", (event) => {
console.log(`Promise rejected; reason: ${event.reason}`);
});
{{Specifications}}
{{Compat}}