ServiceWorkerContainer: controller property
Baseline Widely available
This feature is well established and works across many devices and browser versions. It’s been available across browsers since April 2018.
Secure context: This feature is available only in secure contexts (HTTPS), in some or all supporting browsers.
Note: This feature is available in Web Workers.
The controller
read-only
property of the ServiceWorkerContainer
interface returns a
ServiceWorker
object if its state is activating
or
activated
(the same object returned by
ServiceWorkerRegistration.active
). This property returns
null
if the request is a force refresh (Shift + refresh) or if
there is no active worker.
Value
A ServiceWorker
object.
Examples
js
if ("serviceWorker" in navigator) {
// Do a one-off check to see if a service worker's in control.
if (navigator.serviceWorker.controller) {
console.log(
`This page is currently controlled by: ${navigator.serviceWorker.controller}`,
);
} else {
console.log("This page is not currently controlled by a service worker.");
}
} else {
console.log("Service workers are not supported.");
}
Specifications
Specification |
---|
Service Workers # navigator-service-worker-controller |
Browser compatibility
BCD tables only load in the browser