-
Notifications
You must be signed in to change notification settings - Fork 4
/
102.txt
62 lines (45 loc) · 2.3 KB
/
102.txt
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
* 仕様書
[REFS[
- [17] [CITE@en-US-x-hixie[HTML Standard]] ([TIME[2016-12-05 14:51:53 +09:00]]) <https://html.spec.whatwg.org/#channel-messaging>
-- [2] '''[CITE@en-US-x-hixie[HTML Standard]] ([TIME[2016-12-05 14:51:53 +09:00]]) <https://html.spec.whatwg.org/#message-channels>'''
]REFS]
* コンストラクター
[3] [CODE(DOMi)@en[MessageChannel]] [[インターフェイス]]は、[[コンストラクター]]を持ちます
[SRC[>>2]]。
[14] [[コンストラクター]]は、[[引数]]を持ちません。
[15] [[コンストラクター]]は、新しい [CODE(DOMi)@en[MessagePort]] [[オブジェクト]]を作成して返します。
-*-*-
[7] [[コンストラクター]]は、次のようにしなければ[MUST[なりません]] [SRC[>>2]]。
[FIG(steps)[
= [9] [VAR[設定群]]を、[[現職設定群オブジェクト]]に設定します。
= [8] [VAR[ポート1]]を、[VAR[所有者]]を[VAR[設定群]]として[[新しい[CODE(DOMi)@en[MessagePort]]オブジェクトを作成]]した結果に設定します。
= [10] [VAR[ポート2]]を、[VAR[所有者]]を[VAR[設定群]]として[[新しい[CODE(DOMi)@en[MessagePort]]オブジェクトを作成]]した結果に設定します。
= [11] [VAR[ポート1]]と[VAR[ポート2]]を [[entangle]] します。
= [12] 新しい [CODE(DOMi)@en[MessageChannel]] を返します。
[FIG(list members)[ [13] [CODE(DOMi)@en[MessageChannel]]
: [F[ポート1]] : [VAR[ポート1]]
: [F[ポート2]] : [VAR[ポート2]]
]FIG]
]FIG]
* 文脈
[4] [CODE(DOMi)@en[MessageChannel]] [[インターフェイス]]は、
[[文書環境]]と[[ワーカー環境]]に[[晒され]]ています [SRC[>>2]]。
* 状態
[16] [CODE(DOMi)@en[MessageChannel]] [[オブジェクト]]は、
通常の[[プラットフォームオブジェクト]]の状態に加えて、
次の状態を持ちます。
[FIG(short list)[
- [F[ポート1]]
- [F[ポート2]]
]FIG]
* メンバー
[6] [CODE(DOMi)@en[MessageChannel]] [[オブジェクト]]は、
次の[[メンバー][インターフェイスメンバー]]を持ちます。
[FIG(short list)[
- [CODE(DOMa)@en[port1]]
- [CODE(DOMa)@en[port2]]
]FIG]
* 歴史
[5] [[HTML5]] (現 [CITE[HTML Standard]]) で導入されました。
* メモ
[1] [CODE[MessageChannel]] 便利過ぎるwww