WindowOrWorkerGlobalScope - 描述了 Window 和 WorkerGlobalScope 接口共有的一些功能
WindowOrWorkerGlobalScope
mixin 描述了 Window
和 WorkerGlobalScope
接口共有的一些功能。当然,除了下面列出的功能之外,每个接口都可以添加更多功能。
注意:
WindowOrWorkerGlobalScope
是一个混合而不是一个接口;您实际上无法创建类型为WindowOrWorkerGlobalScope
的对象。
属性
这些属性定义在 WindowOrWorkerGlobalScope
混合中,并由 Window
和 WorkerGlobalScope
实现。
WindowOrWorkerGlobalScope.caches
只读
返回与当前上下文关联的 CacheStorage
对象。该对象启用诸如存储数据以供脱机使用以及生成对请求的自定义响应之类的功能。
WindowOrWorkerGlobalScope.crossOriginIsolated
只读
返回一个布尔值,该布尔值指示是否可以通过 Window.postMessage()
调用发送 SharedArrayBuffer
。
WindowOrWorkerGlobalScope.indexedDB
只读
返回一个 IDBFactory
对象,为应用程序提供一种机制来异步访问索引数据库的功能。
WindowOrWorkerGlobalScope.isSecureContext
只读
返回一个布尔值,指示当前上下文是否安全。
WindowOrWorkerGlobalScope.origin
只读
返回全局作用域的来源,序列化为一个字符串。(这似乎尚未在任何浏览器中实现。)
方法
这些方法定义在 WindowOrWorkerGlobalScope
混合中,并由 Window
和 WorkerGlobalScope
实现。
WindowOrWorkerGlobalScope.atob()
解码已使用 base-64 编码编码的数据字符串。
WindowOrWorkerGlobalScope.btoa()
根据二进制数据字符串创建一个以 64 为基数编码的 ASCII 字符串。
WindowOrWorkerGlobalScope.clearInterval()
取消使用 WindowOrWorkerGlobalScope.setInterval()
执行的重复集。
WindowOrWorkerGlobalScope.clearTimeout()
取消使用 WindowOrWorkerGlobalScope.setTimeout()
执行的延迟集。
WindowOrWorkerGlobalScope.createImageBitmap()
接受各种不同的图像源,并返回解析为 ImageBitmap
的 Promise
。可选地,将源裁剪为以 (sx
, sy
) 为起点,宽度为 sw
且高度为 sh
像素的矩形。
WindowOrWorkerGlobalScope.fetch()
开始从网络获取资源的过程。
WindowOrWorkerGlobalScope.queueMicrotask()
入队一个微任务 - 一个简短的函数,在 JavaScript 代码执行完成且控制权未返回给 JavaScript 调用者之后,而在处理回调和其他任务之前执行。这允许您的代码在不干扰其他(可能是更高优先级的)代码的情况下,但是在浏览器运行时重新获得控制权之前(这可能取决于您需要完成的工作)运行。
WindowOrWorkerGlobalScope.setInterval()
计划每次给定毫秒数后执行的函数。
WindowOrWorkerGlobalScope.setTimeout()
安排要在给定时间内执行的功能。
规范
规范 | 状态 | 备注 |
---|---|---|
HTML Living StandardWindowOrWorkerGlobalScope mixin 的定义 |
现行的标准 | 这里定义了主要的 mixin 。 |
桌面浏览器兼容性
特性 | Chrome | Edge | Firefox | Internet Explorer | Opera | Safari |
---|---|---|---|---|---|---|
基础支持 | 4 | 12 | 1 | 支持 | 支持 | 支持 |
atob | 4 | 12 | 1 271 572 | 10 | 10.5 | 3 |
btoa | 4 | 12 | 1 523 | 10 | 10.5 | 3 |
caches | 40 | ≤79 | 42 524 | 不支持 | 未知 | 不支持 |
clearInterval | 4 | 12 | 1 525 | 46 | 4 | 4 |
clearTimeout | 45 | 12 | 1 528 | 49 | 4 | 4 |
createImageBitmap | 50 | 79 | 5211 42 | 不支持 | 支持 | 不支持 |
crossOriginIsolated | 不支持 | 不支持 | 72 | 不支持 | 不支持 | 不支持 |
fetch | 42 | 14 | 39 34 5212 | 不支持 | 29 28 | 10.1 |
indexedDB | 24 | 12 | 16 10 moz 5213 | 10 | 15 | 7 |
isSecureContext | 55 | ≤79 | 52 | 未知 | 未知 | 未知 |
origin | 59 | ≤79 | 54 | 不支持 | 不支持 | 不支持 |
queueMicrotask | 71 | 79 | 69 | 不支持 | 58 | 12.1 |
setInterval | 30 | 12 | 1 5214 | 4 | 4 | 1 |
setTimeout | 30 | 12 | 1 5214 | 4 | 4 | 1 |
移动浏览器兼容性
特性 | Android | Chrome for Android | Edge mobile | Firefox for Android | IE mobile | Opera Android | iOS Safari |
---|---|---|---|---|---|---|---|
基础支持 | 支持 | 18 | 未知 | 4 | 未知 | 支持 | 支持 |
atob | ≤37 | 18 | 未知 | 4 271 572 | 未知 | 11 | 1 |
btoa | ≤37 | 18 | 未知 | 4 522 | 未知 | 11 | 1 |
caches | 支持 | 支持 | 未知 | 42 524 | 未知 | 支持 | 支持 |
clearInterval | 1 | 18 | 未知 | 4 525 | 未知 | 10.1 | 1 |
clearTimeout | 45 | 45 | 未知 | 4 528 | 未知 | 10.1 | 1 |
createImageBitmap | 50 | 50 | 未知 | 支持 | 未知 | 支持 | 未知 |
crossOriginIsolated | 不支持 | 不支持 | 未知 | 不支持 | 未知 | 不支持 | 不支持 |
fetch | 42 | 42 | 未知 | 39 34 5212 | 未知 | 29 28 | 10.3 |
indexedDB | 支持 | 25 | 未知 | 22 5213 | 未知 | 14 | 8 |
isSecureContext | 55 | 55 | 未知 | 52 | 未知 | 未知 | 未知 |
origin | 59 | 59 | 未知 | 54 | 未知 | 不支持 | 不支持 |
queueMicrotask | 71 | 71 | 未知 | 不支持 | 未知 | 50 | 12.2 |
setInterval | 4.4 | 30 | 未知 | 4 5214 | 未知 | 10.1 | 1 |
setTimeout | 4.4 | 30 | 未知 | 4 5214 | 未知 | 10.1 | 1 |
1. atob()
忽略参数中的所有空格字符以符合最新的 HTML5 规范(请参见 bug 711180)。
2. atob()
现在定义在 WindowOrWorkerGlobalScope
mixin 中。
3. btoa()
现在定义在 WindowOrWorkerGlobalScope
mixin 中。
4. caches
现在定义在 WindowOrWorkerGlobalScope
mixin 中。
5. clearInterval()
现在定义在 WindowOrWorkerGlobalScope
mixin 中。
6. 从 Internet Explorer 4 到 8,clearInterval
是一个对象而不是一个函数。此行为已在 Internet Explorer 9 中修复。
7. 参数为 Timeout
对象而不是 intervalID
。
8. clearTimeout()
现在定义在 WindowOrWorkerGlobalScope
mixin 中。
9. 从 Internet Explorer 4 到 8,clearTimeout
是一个对象而不是一个函数。此行为已在 Internet Explorer 9 中修复。
10. 参数为 Timeout
对象而不是 timeoutID
。
11. createImageBitmap()
现在定义在 WindowOrWorkerGlobalScope
mixin 中。
12. fetch()
现在定义在 WindowOrWorkerGlobalScope
mixin 中。
13. indexedDB
现在定义在 WindowOrWorkerGlobalScope
mixin 中。
14. setInterval
现在定义在 WindowOrWorkerGlobalScope
mixin 中。
15. 返回一个 Timeout
对象而不是 intervalID
。
16. 不支持传递 code
字符串并在第一个参数不是函数时引发。
17. 返回一个 Timeout
对象而不是 timeoutID
。