WorkerGlobalScope:importScripts() 方法

备注: 此特性仅在 Web Worker 中可用。

WorkerGlobalScope 接口的 importScripts() 方法将一个或多个脚本同步导入到 worker 的作用域中。

语法

js
importScripts(path0)
importScripts(path0, path1)
importScripts(path0, path1, /* …, */ pathN)

参数

pathN

一个表示要导入的脚本的 URL 的字符串值。URL 可以是绝对的,也可以是相对的。如果 URL 是相对的,那么它是相对于 worker 入口脚本的 URL。

返回值

无(undefined)。

异常

NetworkError

要导入的脚本没有按有效的 JavaScript MIME 类型(有效的类型如 text/javascript)或允许的旧版 JavaScript MIME 类型提供。

TypeError

如果当前的 WorkerGlobalScope 是一个模块,则抛出此异常。请改用 import

示例

如果你在一个名为 foo.js 的单独脚本中编写了一些你想在 worker.js 中使用的功能,则可以使用以下行导入它:

js
importScripts("foo.js");

foo.js 应该在与 worker 的入口点相同的 URL 子树中——例如,如果这个 worker 是通过 new Worker("worker.js") 创建的,那么 worker.js 就是入口点。如果 worker.jshttps://example.com/scripts/worker.js,那么 foo.js 应该在 https://example.com/scripts/foo.js

importScripts()self.importScripts() 实际上是等效的——都表示在 worker 的内部作用域中调用的 importScripts()

规范

Specification
HTML Standard
# dom-workerglobalscope-importscripts-dev

浏览器兼容性

BCD tables only load in the browser

参见