是否需要在窗口对象前加上setTimeout和setInterval?

时间:2013-11-21 03:00:27

标签: javascript window settimeout setinterval

在Mozilla文档中,有些示例在计时器函数前面用window.编写,有些没有:

function delayedAlert() {
  timeoutID = window.setTimeout(slowAlert, 2000);
}...

setTimeout(myArray.myMethod, 1000);...

window.setInterval = function (vCallback, nDelay...

到目前为止,我一直在编写没有window.的代码而没有任何问题。我想知道是否有必要的任何情况。

2 个答案:

答案 0 :(得分:2)

如果..

  1. 范围内没有其他标识符(xwindow)和;
  2. 没有with绑定可解析给定名称(xwindow),并且;
  3. 给定名称(x)是全局范围内的属性window
  4. ..然后window.xx等效。

    对于标准强制的全局属性/函数(必须存在于理智的Web浏览器环境的全局范围内),我不包括window。我也注意不要掩饰这些名字。

答案 1 :(得分:1)

不,你不必添加它,'window'部分是隐含的,因为根对象是window。但是,人们继续添加它,因为它表示内置的,而不是用户定义的函数。