WorkerGlobalScope:setTimeout() 方法
Baseline
Widely available
*
This feature is well established and works across many devices and browser versions. It’s been available across browsers since 2015年7月.
* Some parts of this feature may have varying levels of support.
备注: 此特性仅在 Web Worker 中可用。
WorkerGlobalScope 接口的 setTimeout() 方法设置一个定时器,一旦定时器到期,就会执行一个函数或指定的代码片段。
语法
setTimeout(code)
setTimeout(code, delay)
setTimeout(functionRef)
setTimeout(functionRef, delay)
setTimeout(functionRef, delay, param1)
setTimeout(functionRef, delay, param1, param2)
setTimeout(functionRef, delay, param1, param2, /* …, */ paramN)
参数
functionRef-
当定时器到期后要执行的函数。
code-
这是一个代替语法,允许你包含在定时器到期后编译和执行的字符串而非函数。这个语法因为与
eval()存在相同的安全风险所以不推荐使用。 delay可选-
定时器在执行指定的函数或代码之前应该等待的时间,单位是毫秒。如果省略该参数,则使用值 0,意味着“立即”执行,或者更准确地说,在下一个事件循环执行。
注意,无论是哪种情况,实际延迟可能会比预期长一些,参见延时比指定值更长的原因。
还要注意的是,如果值不是数字,隐式的类型强制转换会静默地将其转换为数字——这可能导致意想不到的、令人惊讶的结果;参见非数字延迟值被静默地强制转化为数字以获取示例。
param1、……、paramN可选-
会被传递给由
functionRef指定的函数的附加参数。
返回值
返回值 timeoutID 是一个正整数,表示由 setTimeout() 调用创建的定时器的标识符。可以将这个值传递给 clearTimeout() 来取消该定时器。
在定时器仍然激活的情况下,保证 timeoutID 值不会被同一 worker 中的后续 setTimeout() 或 setInterval() 调用重复使用。然而,不同的对象使用不同的 ID 池。
描述
参见 Window.setTimeout() 以获取详细的描述。
示例
参见 Window.setTimeout() 以获取示例。
规范
| Specification |
|---|
| HTML> # dom-settimeout-dev> |
浏览器兼容性
Loading…