Shared workerBaseline · Newly available
The SharedWorker() constructor runs a script in its own thread, which can send and receive messages with other scripts running at the same origin.
Works in the latest version of every major browser, but older devices may not support it yet. Baseline since May 5, 2026.
Browser support
DesktopChrome
1–4Not supported
5+Supportedsince May 25, 2010
Current: 155Edge
12–18Not supported
79+Supportedsince Jan 15, 2020
Current: 154Firefox
1–28Not supported
29+Supportedsince Apr 29, 2014
Current: 157Safari
1–15.6Not supported
16+Supportedsince Sep 12, 2022
Current: 27MobileChrome Android
18–147Not supported
148+Supportedsince May 5, 2026
Current: 155Firefox Android
4–32Not supported
33+Supportedsince Oct 14, 2014
Current: 157Safari iOS
1–15.6Not supported
16+Supportedsince Sep 12, 2022
Current: 27How to use
Every current browser supports this, but it only became Baseline on May 5, 2026. Use it as a progressive enhancement, or keep a fallback if you support older devices.
Example
Full syntax and examples are on MDN: SharedWorker.
Feature detection
JS · check before using
if ("SharedWorker" in globalThis) {
// SharedWorker is available
} else {
// load a polyfill or use a fallback
}Sub-features
Support for each part of the feature (10). The overall table above shows when the whole feature works.
| Sub-feature | Chrome | Edge | Firefox | Safari | Chrome Android | Firefox Android | Safari iOS |
|---|---|---|---|---|---|---|---|
| SharedWorker | 5 | 79 | 29 | 16 | 148 | 33 | 16 |
| SharedWorker.SharedWorker | 5 | 79 | 29 | 16 | 148 | 33 | 16 |
| SharedWorker.SharedWorker.mime_checks | ✕ | ✕ | 81 | 16 | ✕ | 81 | 16 |
| SharedWorker.SharedWorker.options_name_parameter | 70 | 79 | 55 | ✕ | 148 | 55 | ✕ |
| SharedWorker.error_event | 5 | 79 | 29 | 16 | 148 | 33 | 16 |
| SharedWorker.port | 5 | 79 | 29 | 16 | 148 | 33 | 16 |
| SharedWorkerGlobalScope | 4 | 79 | 29 | 16 | 148 | 29 | 16 |
| SharedWorkerGlobalScope.close | 4 | 79 | 29 | 16 | 148 | 29 | 16 |
| SharedWorkerGlobalScope.connect_event | 4 | 79 | 29 | 16 | 148 | 29 | 16 |
| SharedWorkerGlobalScope.name | 4 | 79 | 29 | 16 | 148 | 29 | 16 |