このページはコミュニティーの尽力で英語から翻訳されました。MDN Web Docs コミュニティーについてもっと知り、仲間になるにはこちらから。

View in English Always switch to English

Clients: matchAll() メソッド

Baseline 広く利用可能

この機能は広く実装されており、多くのバージョンの端末やブラウザーで動作します。2018年4月以降、すべてのブラウザーで利用可能です。

メモ: この機能はサービスワーカー内でのみ利用可能です。

matchAll()Clients インターフェイスのメソッドで、サービスワーカークライアント(Client)オブジェクトのリストの Promise を返します。 関連するサービスワーカーのオリジンと同じオリジンを持つすべてのサービスワーカークライアントを返すには、options 引数を含めます。 オプションが含まれていなかった場合、このメソッドは、サービスワーカーによって制御されるサービスワーカークライアントのみを返します。

構文

js
matchAll()
matchAll(options)

引数

options 省略可

照合操作のオプションを設定できるオプションオブジェクト。 利用可能なオプションは次のとおりです。

includeUncontrolled

論理値です。true に設定すると、照合操作は、現在のサービスワーカーと同じオリジンを共有するすべてのクライアントを返します。 それ以外の場合は、現在のサービスワーカーによって制御されているサービスワーカークライアントのみを返します。 既定値は false です。

type

照合するクライアントの種類を設定します。 使用可能な値は、"window""worker""sharedworker""all" です。 既定値は "window" です。

返値

Client オブジェクトの配列に解決される Promise。 Chrome 46/Firefox 54 以降では、このメソッドはクライアントを直近でフォーカスした順序で返し、仕様どおりに修正されました

js
clients.matchAll(options).then((clientList) => {
  for (const client of clientList) {
    if (client.url === "index.html") {
      clients.openWindow(client);
      // または、一致するクライアントに関係する何かを行う
    }
  }
});

仕様書

仕様書
Service Workers Nightly
# clients-matchall

ブラウザーの互換性