* 状態

[2] [CODE(DOMi)@en[[[EventTarget]]]] や[[大域オブジェクト]]の持つ状態に加えて、次の状態があります。
[FIG(list members)[
:種類:[CODE(DOMi)@en[[[DedicatedWorkerGlobalScope]]]] ([[専用ワーカー]])、
[CODE(DOMi)@e[[[SharedWorkerGlobalScope]]]] ([[共有ワーカー]])、
[CODE(DOMi)@en[[[ServiceWorkerGlobalScope]]]] ([[サービスワーカー]]) のいずれかです。
: [F[型][スクリプトの型]] : [[古典スクリプト]]か[[モジュールスクリプト]]のいずれかを表します。
:[[イベントループ]]: 本[[ワーカー]]の[[タスク]]の実行のための[[イベントループ]]です。
:[[closing flag]]: 終了中かどうかを表すフラグです。
:実行状態:
[[permissible worker]],
[[active needed worker]],
[[protected worker]],
[[suspendable worker]],
[RUBYB[一時中断]@en[suepend]]の各状態にあるかどうかです ([[run a worker]] 参照)。
: [F[活性タイマーのリスト]] : 
: [F[実行待ちタイマー群]] : 
:[[ワーカーのポート群]]:
: [F[所有者集合]] :
: [F[ワーカー集合]] :
:関連付けられたオブジェクト:[CODE(DOMi)@en[[[Worker]]]] または [CODE(DOMi)@en[[[SharedWorker]]]] です。
:[DFN[[[ワーカーのURL]]]]: [[ワーカー]]の[[スクリプト]]の [[URL]] です。
:[F[[CODE(DOMa)@en[[[location]]]]]]: [CODE(DOMi)@en[[[WorkerLocation]]]] [[オブジェクト]]です。
:[F[[CODE(DOMa)@en[[[navigator]]]]]]: [CODE(DOMi)@en[[[WorkerNavigator]]]] [[オブジェクト]]です。
:[F[[[HTTPS状態]]]]: [[ワーカー]]の[[スクリプト]]取得時に決まった[[HTTPS状態]]です。
: [F[参照元ポリシー]] :
:[F[[[CSPリスト]]]]: [[ワーカー]]の[[スクリプト]]取得時に決まった[[CSPリスト]]です。
: [F[モジュール写像]] : [[モジュールスクリプトのfetch]]で使う[[モジュール写像]]です。
: [F[時刻起源]] :
: [F[[CODE(DOMi)@en[Performance]]]] :
: [F[名前][ワーカーの名前]] : [[ワーカー]]の名前 ([CODE(DOMa)@en[name][ワーカーの名前]] [[属性値]]) です。

[HISTPRY[
:[F[[[ワーカーの[CODE(DOMi)@en[Document]]群]]]]:
:[F[ワーカーのワーカー群]]:
]HISTORY]
]FIG]

[3] [CODE(DOMi)@en[[[DedicatedWorkerGlobalScope]]]] には更に
[CODE[AnimationFrameProvider]] の状態と次の状態があります。

[FIG(list members)[
:暗黙の [CODE(DOMi)@en[[[MessagePort]]]]:[CODE(DOMm)@en[[[postMessage]]]] が使います。
]FIG]

[4] [CODE(DOMi)@en[[[SharedWorkerGlobalScope]]]] には更に次の状態があります。
[FIG(list members)[
:[F[構築子URL]]: [[共有ワーカー]]作成時に[[コンストラクター]]で指定された [[URL]] です。
: [F[構築子起源]] :
:[[応用キャッシュ]]:
]FIG]

[5] [CODE(DOMi)@en[[[ServiceWorkerGlobalScope]]]] には更に次の状態があります。
[FIG(list members)[
:[[サービスワーカー]]:関連付けられた[[サービスワーカー]]。
:[[importscripts allowed flag]]:[CODE(DOMm)@en[[[importScripts]]]]
[[メソッド]]の実行可否。初期状態では未設定。
:[[imported scripts updated flag]]:
]FIG]

* メンバー

[132] 次の[[インターフェイス]]を[[実装]]しています。
[FIG(list middle)[
- [CODE(DOMi)@en[WindowOrWorkerGlobalScope]]
]FIG]

[FIG(short list)[ [9] [CODE(DOMi)@en[DedicatedWorkerGlobalScope]] の[[メンバー][インターフェイスメンバー]]
- [CODE(DOMa)@en[name][ワーカー名]]
- [CODE[AnimationFrameProvider]] のメンバー
]FIG]

* 歴史

[REFS[
- [1] [CITE@en[Web Applications 1.0 r7675 Merge WorkerUtils into WorkerGlobalScope]]
( ([TIME[2013-01-31 08:31:00 +09:00]] 版))
<http://html5.org/tools/web-apps-tracker?from=7674&to=7675>
]REFS]

[6] [CITE@en[Define WorkerGlobalScope in a single place · whatwg/html@cf833be]]
([TIME[2015-09-24 20:01:04 +09:00]] 版)
<https://github.com/whatwg/html/commit/cf833be70e718764c93f73c010dad60b00933306>

[7] [CITE@en[Editorial: put properties shared across globals on mixin · whatwg/html@cdd48e1]]
([TIME[2016-04-07 20:04:09 +09:00]] 版)
<https://github.com/whatwg/html/commit/cdd48e1f570c817402bf62108847c4a9f4b00b1e>

[8] [CITE@en[Editorial: restructure ownership of workers to parent-owners]]
([[annevk]]著, [TIME[2017-04-14 14:47:44 +09:00]])
<https://github.com/whatwg/html/commit/59a4750f475acd789ee436b4906972ba2081d8b3>