ServiceWorkerRegistration: unregister() method
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 unregister()
method of the
ServiceWorkerRegistration
interface unregisters the service worker
registration and returns a 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 ServiceWorkerContainer.register()
with the same scope.) The service worker will finish any ongoing operations before it is
unregistered.
Syntax
unregister()
Parameters
None.
Return value
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:
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
Specification |
---|
Service Workers # navigator-service-worker-unregister |
Browser compatibility
BCD tables only load in the browser