【发布时间】:2012-01-13 14:41:05
【问题描述】:
我有another question in SO about setTimeout(),其中一位用户提到如果函数参数是一个字符串,它将在全局范围内进行评估,否则它不是。这让我大开眼界,所以我试图找到更多关于 setTimeout 实际工作原理的信息,但它不是 EcmaScript 规范的一部分,甚至 MDN 也没有我在 SO 中找到的特定信息。
关于setTimeout() 的工作原理是否有一些好的参考资料?
【问题讨论】:
-
Here 是 MDN 页面。
-
在 HTML5 草稿中:dev.w3.org/html5/spec/Overview.html#timers
-
MDN 确实有一些关于它的有用信息:“由 setTimeout() 执行的代码在与调用它的函数不同的执行上下文中运行。”
-
@MattK:是的,但是该段的其余部分讨论的是
this,这与范围不同。 -
那么如果ECMAscript中没有定义setTimeout等类似的API,那么javascript本身应该是同步语言吧?我们可以这么说吗?
标签: javascript settimeout