--- title: ServiceWorkerRegistration.unregister() slug: Web/API/ServiceWorkerRegistration/unregister tags: - API - Method - Reference - Service Workers - ServiceWorkerRegistration - unregister translation_of: Web/API/ServiceWorkerRegistration/unregister ---
{{APIRef("Service Workers API")}}

{{domxref("ServiceWorkerRegistration")}} インターフェイスの unregister() メソッドは、サービスワーカー登録を登録解除し、{{jsxref("Promise")}} を返します。 登録が見つからなかった場合、Promise は false に解決されます。 それ以外の場合は、登録解除したかどうかに関係なく、true に解決されます(誰かが同じスコープで {{domxref("ServiceWorkerContainer.register()")}} をちょうど呼び出した場合は登録解除されない場合があります)。 サービスワーカーは、登録解除される前に進行中の操作を完了します。

: この機能は Web Worker で使用できます。

構文

serviceWorkerRegistration.unregister().then(function(boolean) {
});

パラメーター

なし。

戻り値

{{jsxref("Promise")}} は、サービスワーカーが登録解除されているかどうかを示すブール値で解決します。

次の簡単な例では、サービスワーカーの例を登録していますが、すぐに再び登録を解除しています。

if ('serviceWorker' in navigator) {
  navigator.serviceWorker.register('/sw-test/sw.js', {scope: 'sw-test'}).then(function(registration) {
    // 登録しました
    console.log('登録に成功しました。');
    registration.unregister().then(function(boolean) {
      // boolean = true ならば、登録解除は成功
    });
  }).catch(function(error) {
    // 登録に失敗しました
    console.log('登録に失敗しました:' + error);
  });
};

仕様

仕様 状態 コメント
{{SpecName('Service Workers', 'navigator-service-worker-unregister', 'ServiceWorkerRegistration.unregister()')}} {{Spec2('Service Workers')}} 初期定義

ブラウザーの互換性

{{Compat("api.ServiceWorkerRegistration.unregister")}}

関連情報