MDN’s new design is in Beta! A sneak peek: https://blog.mozilla.org/opendesign/mdns-new-design-beta/

Web Workers が使用できる関数とクラス

基本的な JavaScript の関数(StringArrayObjectJSON など)に加えて、DOMから worker に利用できる様々な関数があります。この記事ではそれらの機能のリストを提供します。

Worker は、現在の window とは異なるグローバルコンテキスト、 DedicatedWorkerGlobalScope で実行されます。Window の既定のメソッドとプロパティは使用できませんが、Window といった DedicatedWorkerGlobalScopeWindowTimersWindowBase64 を実装しています。

worker の種類別のプロパティとメソッドの比較

関数 Dedicated workers Shared workers Service workers Chrome workers workers の外側
atob() WorkerGlobalScope で使用可能。 WorkerGlobalScope で使用可能。 WorkerGlobalScope で使用可能。 WorkerGlobalScope で使用可能。 Window で使用可能。
btoa() WorkerGlobalScope で使用可能。 WorkerGlobalScope で使用可能。 WorkerGlobalScope で使用可能。 WorkerGlobalScope で使用可能。 Window で使用可能。
clearInterval() WorkerGlobalScope で使用可能。 WorkerGlobalScope で使用可能。 WorkerGlobalScope で使用可能。 WorkerGlobalScope で使用可能。 Window で使用可能。
clearTimeout() WorkerGlobalScope で使用可能。 WorkerGlobalScope で使用可能。 WorkerGlobalScope で使用可能。 WorkerGlobalScope で使用可能。 Window で使用可能。
dump() WorkerGlobalScope で使用可能。 WorkerGlobalScope で使用可能。 WorkerGlobalScope で使用可能。 WorkerGlobalScope で使用可能。 Window で使用可能。
setInterval() WorkerGlobalScope で使用可能。 WorkerGlobalScope で使用可能。 WorkerGlobalScope で使用可能。 WorkerGlobalScope で使用可能。 Window で使用可能。
setTimeout() WorkerGlobalScope で使用可能。 WorkerGlobalScope で使用可能。 WorkerGlobalScope で使用可能。 WorkerGlobalScope で使用可能。 Window で使用可能。
importScripts() WorkerGlobalScope で使用可能。 WorkerGlobalScope で使用可能。 WorkerGlobalScope で使用可能。 WorkerGlobalScope で使用可能。 使用不可。
close() WorkerGlobalScope で使用可能。 WorkerGlobalScope で使用可能。 使用可能だが、オプションがない。 不明。 使用不可。
postMessage() DedicatedWorkerGlobalScope で使用可能。 使用不可。 使用不可。 不明。 使用不可。

worker で使用できる API

関数 機能 Gecko(Firefox)のサポート状況 IE のサポート状況 Blink(Chrome と Opera) のサポート状況 WebKit(Safari) のサポート状況
Broadcast Channel API 同じ origin(通常は同じサイトのページ)で browsing contextswindow 、 tabframe、あるいはiframe)間の単純な通信ができる。 38 (38) 未サポート 未サポート 未サポート
Cache Cache API は現在のオリジンと関連付けられたキャッシュストレージをプログラムで制御する機能を提供する。 (有) 未サポート 43 ?
Channel Messaging API

2 つのポートを介して 直接通信できるようにするために異なるブラウジングコンテキストで実行される2つの隔てられたスクリプトが同じ document (たとえば、2つのiFrame、あるいはメインの document とiFrame、SharedWorker を介した2つの document 、あるいは2つの worker )にアクセスすることができる。

41 (41) (有) (有) (有)
Console API ブラウザのデバッグコンソールへのアクセスを提供する(たとえば、Firefox の Web コンソール)。どのように動作するかの詳細はブラウザごとに異なるが、一般的に提供されている機能のデファクトセットである。 38 (38) (有) (有) (有)
CustomEvent CustomEvent インターフェースは、あらゆるアプリケーションでの初期化するイベントを表す。 48 (48) (有) (有) (有)
Data Store 複数の Firefox OS アプリケーションで、素早く効率的でセキュアな相互のデータの保存や共有を行うための強力で柔軟なストレージ機構。 v1.0.1 から、Firefox OS 内部(認定の通った)アプリケーションのみ。 未サポート 未サポート 未サポート
DOMRequestDOMCursor それぞれ、これらのオブジェクトは進行中の操作(たとえば、成功時や失敗時の操作に反応するリスナをを使って)、結果リストを跨いだ進行中の操作を表す。 41 (41) ? ? ?
Fetch Fetch 仕様はリソースを取得する、最新定義および API を提供する(たとえば、ネットワークを経由しての)。 多くは34 (34) に、いくつかの機能はそれ以降で。 未サポート 42
41 設定が必要
未サポート
FileReader この API では、 BlobFile オブジェクトの非同期読み取りが可能。 46 (46) 未サポート (有) 未サポート
FileReaderSync この API では、BlobFile オブジェクトの同期読み取りが可能。worker 内でのみ実行可能な API。 8 (8) 未サポート 未サポート 未サポート
FormData FormData オブジェクトは、XMLHttpRequest send() メソッドを使用して送信できる Form フィールドとその値を表す key/value ペアのセットを簡単に構築する方法を提供する。 ?39 (39) で実装されているはずである) ? (有) ?
ImageData canvas 要素の領域の下にあるピクセルデータ。Web Worker に委任したほうが適しているような、複雑な処理になるデータを操作する。 25 (25) 未サポート 未サポート 未サポート
IndexedDB シンプルな値と階層的なオブジェクトを保持するレコードを保存するデータベース。 37 (37), IDBCursorWithValue42 (42) から。 10.0 (有) 未サポート
Notifications Web ページがエンドユーザーへのシステム通知の表示を制御できるようにする。 41 (41) ? ? ?
Performance Performance インターフェースは、指定されたページのタイミング関連のパフォーマンス情報を表す。 34.0 (34.0) ? 33.0 ?
Promise 非同期関数を記述できる JavaScript オブジェクト。 28 (28) (有) (有) (有)
ServiceWorkerRegistration 基本 worker から service worker を登録でき、関連する機能を使用できる。 40 (40) 未サポート (有) 未サポート
TextEncoderTextDecoder 特定のエンコーディングに エンコード、またはでコードできる新しい TextEncoderTextDecoder を生成して返す。 20 (20) 未サポート 未サポート 未サポート
URL

Worker にアクセスできる Blob とともに URL.createObjectURLURL.revokeObjectURL 静的メソッドを使用できる。
Worker は URL() コンストラクタを使用して新しい URL を生成し、返されたオブジェクトの通常のメソッドを呼び出せる。

21 (21)。URL() コンストラクタは 26 (26) から。 未サポート 未サポート 未サポート
OffscreenCanvasWebGL WebGL(Web グラフィックライブラリ)は、プラグインを使用せずにブラウザ互換性を保ちながらインタラクティブな 3D と 2D レンダリングができる JavaScript API である。 44 (44)(設定で有効化する)。about:config で、gfx.offscreencanvas.enabled を true に設定する。 未サポート 未サポート 未サポート
WebSocket 新しい WebSocket オブジェクトを生成して返す。これは標準の WebSocket() コンストラクタの動作を模倣する。 37 (37) 11.0 (有) (有)
Worker 新しい Worker を生成する。worker はより多くの worker を生成できる。 3.5 (1.9.1) 10.0 未サポート crbug.com/31666 を見てください。 未サポート
WorkerGlobalScope グローバルスコープの worker。このオブジェクトは Worker 特有の関数を定義する。 (有) 10.0 (有) (有)
WorkerLocation worker で使用可能な Location インターフェースのサブセット。 3.6 (1.9.2) 10.0 (有) (有)
WorkerNavigator worker で使用可能な Navigator インターフェースのサブセット。

基本実装 (有)
appCodeNameproducttaintEnabled()28 (28)
onLine29 (29)
NavigatorLanguage: (有)

appNameappVersiononLineplatformuserAgent: 10.0
Other: 未サポート
(有) (有)
XMLHttpRequest 新しい XMLHttpRequest オブジェクトを生成して返す。これは標準の XMLHttpRequest() コンストラクタの動作を模倣する。XMLHttpRequestresponseXMLchannel 属性は常に null を返すことに注意。

基本: 3.5 (1.9.1)

responseresponseType は、10 (10) から使用可能。

timeoutontimeout は、13 (13) から使用可能。

(有) (有) (有)

関連項目

ドキュメントのタグと貢献者

 このページの貢献者: kenji-yamasaki, chikoski, hamasaki, YuichiNukiyama
 最終更新者: kenji-yamasaki,