AbortController and AbortSignalBaseline · Widely available
The AbortController and AbortSignal APIs allow you to cancel an ongoing operation, such as a fetch() request.
Supported in all major browsers for at least 30 months — safe to use without fallbacks. Baseline since Mar 25, 2019. Widely available since Sep 25, 2021.
Browser support
DesktopChrome
1–65Not supported
66+Supportedsince Apr 17, 2018
Current: 155Edge
12–15Not supported
16+Supportedsince Oct 17, 2017
Current: 154Firefox
1–56Not supported
57+Supportedsince Nov 14, 2017
Current: 157Safari
1–12Not supported
12.1+Supportedsince Mar 25, 2019
Current: 27MobileChrome Android
18–65Not supported
66+Supportedsince Apr 17, 2018
Current: 155Firefox Android
4–56Not supported
57+Supportedsince Nov 28, 2017
Current: 157Safari iOS
1–12Not supported
12.2+Supportedsince Mar 25, 2019
Current: 27How to use
This feature is Baseline widely available — use it freely, no fallback needed.
Example
Full syntax and examples are on MDN: AbortController.
Feature detection
JS · check before using
if ("AbortController" in globalThis) {
// AbortController is available
} else {
// load a polyfill or use a fallback
}Sub-features
Support for each part of the feature (12). The overall table above shows when the whole feature works.
| Sub-feature | Chrome | Edge | Firefox | Safari | Chrome Android | Firefox Android | Safari iOS |
|---|---|---|---|---|---|---|---|
| AbortController | 66 | 16 | 57 | 12.1 | 66 | 57 | 12.2 |
| AbortController.AbortController | 66 | 16 | 57 | 12.1 | 66 | 57 | 12.2 |
| AbortController.abort | 66 | 16 | 57 | 12.1 | 66 | 57 | 12.2 |
| AbortController.abort.reason_parameter | 98 | 98 | 97 | 15.4 | 98 | 97 | 15.4 |
| AbortController.signal | 66 | 16 | 57 | 12.1 | 66 | 57 | 12.2 |
| AbortSignal | 66 | 16 | 57 | 11.1 | 66 | 57 | 11.3 |
| AbortSignal.abort_event | 66 | 16 | 57 | 11.1 | 66 | 57 | 11.3 |
| AbortSignal.abort_static | 93 | 93 | 88 | 15 | 93 | 88 | 15 |
| AbortSignal.abort_static.reason_parameter | 98 | 98 | 97 | 15.4 | 98 | 97 | 15.4 |
| AbortSignal.aborted | 66 | 16 | 57 | 11.1 | 66 | 57 | 11.3 |
| AbortSignal.reason | 98 | 98 | 97 | 15.4 | 98 | 97 | 15.4 |
| AbortSignal.throwIfAborted | 100 | 100 | 97 | 15.4 | 100 | 97 | 15.4 |