In addition to the standard JavaScript set of functions (such as String
, Array
, Object
, JSON
, etc.), there are a variety of functions available from the DOM to workers. This article provides a list of those.
In addition to the standard JavaScript set of functions (such as String
, Array
, Object
, JSON
, etc.), there are a variety of functions available from the DOM to workers. This article provides a list of those.
Workers run in a different global context than the current window! While Window
is not directly available to workers, many of the same methods are defined in a shared mixin (WindowOrWorkerGlobalScope
), and made available to workers through their own WorkerGlobalScope
-derived contexts:
DedicatedWorkerGlobalScope
for dedicated workersSharedWorkerGlobalScope
for shared workersServiceWorkerGlobalScope
for service workers
Some of the functions (a subset) that are common to all workers and to the main thread (from WindowOrWorkerGlobalScope
) are:
atob()
btoa()
clearInterval()
clearTimeout()
dump()
Non-standard
queueMicrotask()
setInterval()
setTimeout()
structuredClone()
window.requestAnimationFrame
(dedicated workers only)window.cancelAnimationFrame
(dedicated workers only)The following functions are only available to workers:
WorkerGlobalScope.importScripts()
(all workers)DedicatedWorkerGlobalScope.postMessage
(dedicated workers only)Note: If a listed API is supported by a platform in a particular version, then it can generally be assumed to be available in web workers. You can also test support for a particular object/function using the site: https://worker-playground.glitch.me/
The following Web APIs are available to workers:
Barcode Detection API
Broadcast Channel API
Cache API
Channel Messaging API
Console API
Crypto
)CustomEvent
Encoding API
(e.g. TextEncoder
, TextDecoder
)Fetch API
FileReader
FileReaderSync
(only works in workers!)FormData
ImageBitmap
ImageData
IndexedDB
Notifications API
OffscreenCanvas
(and all the canvas context APIs)Performance API
, including: ServiceWorkerRegistration
URL API
(e.g. URL
)WebSocket
XMLHttpRequest
Workers can also spawn other workers, so these APIs are also available:
© 2005–2023 MDN contributors.
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.
https://developer.mozilla.org/en-US/docs/Web/API/Web_Workers_API/Functions_and_classes_available_to_workers