Back to Content

ServiceWorkerRegistration: unregister() method

files/en-us/web/api/serviceworkerregistration/unregister/index.md

latest1.7 KB
Original Source

{{APIRef("Service Workers API")}}{{SecureContext_Header}} {{AvailableInWorkers}}

The unregister() method of the {{domxref("ServiceWorkerRegistration")}} interface unregisters the service worker registration and returns a {{jsxref("Promise")}}. The promise will resolve to false if no registration was found, otherwise it resolves to true irrespective of whether unregistration happened or not (it may not unregister if someone else just called {{domxref("ServiceWorkerContainer.register()")}} with the same scope.) The service worker will finish any ongoing operations before it is unregistered.

Syntax

js-nolint
unregister()

Parameters

None.

Return value

{{jsxref("Promise")}} resolves with a boolean indicating whether the service worker has unregistered or not.

Examples

The following simple example registers a service worker example, but then immediately unregisters it again:

js
if ("serviceWorker" in navigator) {
  navigator.serviceWorker
    .register("/sw.js", { scope: "/" })
    .then((registration) => {
      // registration worked
      console.log("Registration succeeded.");
      registration.unregister().then((boolean) => {
        // if boolean = true, unregister is successful
      });
    })
    .catch((error) => {
      // registration failed
      console.error(`Registration failed with ${error}`);
    });
}

Specifications

{{Specifications}}

Browser compatibility

{{Compat}}

See also