SharedWorkerGlobalScope - 表示 SharedWorker 的全局范围
SharedWorkerGlobalScope 表示 SharedWorker 的全局范围,可以使用 self 关键字访问该对象。 JavaScript 参考中列出了一些通常不与工作线程全局范围相关联但可用的其他全局函数,名称空间对象和构造函数。请参见可用于工作线程的功能的完整列表。
属性
该接口继承了 WorkerGlobalScope 接口及其父接口 EventTarget 的属性,因此实现了 WindowTimers,WindowBase64 和 WindowEventHandlers。
SharedWorkerGlobalScope.name 只读
使用 SharedWorker() 构造函数创建 SharedWorker 时的名称(可选)。这主要用于调试目的。
SharedWorkerGlobalScope.applicationCache 只读
此属性返回工作线程的 ApplicationCache 对象(请参见使用应用程序缓存)。
从 WorkerGlobalScope 继承的属性
WorkerGlobalScope.self
返回 DedicatedWorkerGlobalScope 对象的引用。
WorkerGlobalScope.console 只读
返回与工作线程关联的 Console。
WorkerGlobalScope.location 只读
返回与工作线程关联的 WorkerLocation。WorkerLocation 是一个特定的位置对象,主要是 Location 的一个子集,用于浏览范围,但适用于工作线程。
WorkerGlobalScope.navigator 只读
返回与工作线程关联的 WorkerNavigator。WorkerNavigator 是一个特定的导航器对象,主要是 Navigator 的一个子集,用于浏览范围,但适用于工作线程。
WorkerGlobalScope.performance 只读
返回与工作程序相关联的 Performance 对象,该对象是一个常规的性能对象,具有其属性和方法的子集。
事件处理程序
该接口继承了 WorkerGlobalScope 接口及其父接口 EventTarget 的事件处理程序,因此实现了 WindowTimers,WindowBase64 和 WindowEventHandlers 的事件处理程序。
SharedWorkerGlobalScope.onconnect
一个 EventHandler,表示引发 connect 事件时(即 MessagePort)连接时要调用的代码在关联的 SharedWorker 和主线程之间打开。
方法
该接口继承了 WorkerGlobalScope 接口及其父接口 EventTarget 的方法,因此实现了 WindowTimers,WindowBase64 和 WindowEventHandlers 的方法。
SharedWorkerGlobalScope.close()
丢弃在 SharedWorkerGlobalScope 事件循环中排队的所有任务,从而有效地关闭此特定范围。
从 WorkerGlobalScope 继承的方法
WorkerGlobalScope.close()
丢弃在 WorkerGlobalScope 事件循环中排队的所有任务,从而有效地关闭此特定范围。
WorkerGlobalScope.dump()
允许您将消息写到标准输出 - 即在您的终端中。这与 Firefox 的 window.dump 相同,但适用于工作线程。
WorkerGlobalScope.importScripts()
将一个或多个脚本导入工作线程的作用域。您可以指定任意多个,并以逗号分隔。例如:importScripts('foo.js', 'bar.js');
从其他地方继承的方法
WindowBase64.atob()
解码已使用 base-64 编码编码的数据字符串。
WindowBase64.btoa()
从一串二进制数据创建一个以 64 为基数编码的 ASCII 字符串。
WindowTimers.clearInterval()
取消使用 WindowTimers.setInterval() 设置的重复执行集。
WindowTimers.clearTimeout()
取消使用 WindowTimers.setTimeout() 设置的重复执行集。
WindowTimers.setInterval()
每 X 毫秒调度一次函数。
WindowTimers.setTimeout()
设置执行功能的延迟。
事件
使用 addEventListener() 或通过为此接口的 oneventname 属性分配事件监听器来监听这些事件
connect
当新的客户端连接时,在共享工作线程上触发。也可以通过 onconnect 属性获处理。
规范
| 规范 | 状态 | 备注 |
|---|---|---|
| HTML Living Standard SharedWorkerGlobalScope 的定义 |
现行的标准 | - |
桌面浏览器兼容性
| 特性 | Chrome | Edge | Firefox | Internet Explorer | Opera | Safari |
|---|---|---|---|---|---|---|
| 基础支持 | 4 | 未知 | 29 | 不支持 | 10.6 | 5 |
applicationCache | 4 | 未知 | 29 | 不支持 | 10.6 | 不支持 |
close | 不支持 | 未知 | 54 | 不支持 | 不支持 | 未知 |
connect 事件 | 4 | 未知 | 291 | 不支持 | 10.6 | 不支持 |
name | 支持 | 未知 | 55 | 不支持 | 10.6 | 不支持 |
onconnect | 4 | 未知 | 29 | 不支持 | 10.6 | 不支持 |
移动浏览器兼容性
| 特性 | Android | Chrome for Android | Edge mobile | Firefox for Android | IE mobile | Opera Android | iOS Safari |
|---|---|---|---|---|---|---|---|
| 基础支持 | 支持 | 支持 | 未知 | 4 | 未知 | 11 | 7 |
applicationCache | 支持 | 支持 | 未知 | 29 | 未知 | 支持 | 未知 |
close | 不支持 | 不支持 | 未知 | 54 | 未知 | 不支持 | 未知 |
connect 事件 | 支持 | 18 | 未知 | 291 | 未知 | 支持 | 未知 |
name | 支持 | 40 | 未知 | 55 | 未知 | 支持 | 不支持 |
onconnect | 支持 | 18 | 未知 | 29 | 未知 | 支持 | 未知 |
1. 在版本 65 之前,事件对象的 data 属性为 null;现在按照规范将其初始化为空字符串。