DedicatedWorkerGlobalScope

该 DedicatedWorkerGlobalScope 对象(也就是 Worker 全局作用域)可以通过 self关键字来访问 。也可以在这上面使用一些不直接与该worker全局作用域相关的全局函数,命名空间对象以及构造器,相关信息可以参见 JavaScript Reference。更多内容参考: Functions available to workers

属性

该接口属性继承自WorkerGlobalScope 接口以及它的父类EventTarget,因此实现了来自于WindowTimers, WindowBase64 和WindowEventHandlers中的属性。

从WorkerGlobalScope继承的属性

WorkerGlobalScope.self
返回一个引用自 DedicatedWorkerGlobalScope本身的对象
WorkerGlobalScope.console 只读
返回和worker相关的 Console
WorkerGlobalScope.location 只读
返回和worker相关的 WorkerLocation 。 WorkerLocation 是一个特定的 location 对象, 绝大部分是浏览器作用域的Location的子集,但根据worker进行了一些修改。
WorkerGlobalScope.navigator 只读
WorkerNavigator 是一个特定的 location 对象, 绝大部分是浏览器作用域的Navigator 的子集,但根据worker进行了一些修改。
WorkerGlobalScope.performance 只读
返回和worker相关的Performance 对象 ,该对象是标准的performance对象,但是只是其属性和方法的子集。

事件处理程序

该接口继承了来自于WorkerGlobalScope接口以及它的父类 EventTarget,因此实现了来自于 WindowTimers,WindowBase64,和 WindowEventHandlers中的属性。

DedicatedWorkerGlobalScope.onmessage
是一个EventHandler ,其代码会在一个message事件产生时被调用。这些事件的类型是 MessageEvent 并且将会被在worker接收到一个来自于启动该worker的文档的消息时被调用(比如来自于Worker.postMessage方法。)

Methods

该接口继承了来自于WorkerGlobalScope接口以及它的父类 EventTarget,因此实现了来自于 WindowTimers,WindowBase64,和 WindowEventHandlers中的属性。

DedicatedWorkerGlobalScope.postMessage
发送消息到生成该worker的父文档——消息可以由任何Javascript对象组成。

继承自WorkerGlobalScope

WorkerGlobalScope.close()
抛弃所有正在该WorkerGlobalScope的 event loop中排队的任务,有效地关闭该特定作用域。
WorkerGlobalScope.dump()
往控制台写入一条消息。
WorkerGlobalScope.importScripts()
导入一条或者以上脚本到当前worker的作用域里。你可以根据你的需求指定要导入的脚本,通过逗号分割。比如:importScripts('foo.js', 'bar.js');

由别的地方实现的方法

WindowBase64.atob()
解码经过base-64编码后的字符串数据。
WindowBase64.btoa()
将二进制数据用base-64编码为ASCII 字符串。
WindowTimers.clearInterval()
取消使用 WindowTimers.setInterval()创建的重复操作集。
WindowTimers.clearTimeout()
取消使用WindowTimers.setTimeout()创建的重复操作集。
WindowTimers.setInterval()
按计划每X毫秒执行某一函数。
WindowTimers.setTimeout()
延迟执行某一函数。

相关规范

Specification Status Comment
WHATWG HTML Living Standard
DedicatedWorkerGlobalScope
Living Standard No change from Web Workers.
Web Workers
DedicatedWorkerGlobalScope
Editor's Draft Initial definition.

浏览器兼容性

Feature Chrome Firefox (Gecko) Internet Explorer Opera Safari
Basic support 4 3.5 (1.9.1) 10 10.6 4
ononline, onoffline (Yes) 29 (29) ? ? ?
console (Yes) 29 (29)[1]
30 (30)
? ? ?
performance (Yes) 34 (34) ? ? ?
Feature Android Chrome for Android Firefox Mobile (Gecko) Firefox OS (Gecko) IE Mobile Opera Mobile Safari Mobile
Basic support ? (Yes) 1.0 (1.9.1) 1.0.1 10 11.5 5.1
ononline, onoffline ? (Yes) 29.0 (29)[1]
30.0 (30)
1.4 ? ? ?
console ? (Yes) 29.0 (29) 1.4 ? ? ?
performance ? (Yes) 34.0 (34) 2.1 ? ? ?

[1] Gecko 29.0 implemented this as WorkerConsole. Gecko 30.0 changed this to the regular Console.

相关链接

文档标签和贡献者