ServiceWorkerContainer.controller

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.

Syntax

var myController = navigator.serviceWorker.controller;

Value

A ServiceWorker object.

Example

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 1
# navigator-service-worker-controller

Browser compatibility

BCD tables only load in the browser