【问题标题】:What is the difference between alert and window.alert?alert 和 window.alert 有什么区别?
【发布时间】:2013-06-13 00:45:25
【问题描述】:

alert()window.alert() 函数有什么区别?它似乎工作相同。

【问题讨论】:

    标签: javascript


    【解决方案1】:

    因为window 是全局对象,您可以通过它的简写:alert( 'Hello!' ); 或通过专门引用全局对象:window.alert( 'Hello!' ); 来调用alert

    它们是一样的。

    【讨论】:

    • 好像 this.alert('Hello!');做同样的工作。我猜那我们在全局范围内是 window 对象。
    • window.addEventListener 呢?我们也可以只写 addEventListener 吗?
    • 受制于下面 Eineki 提到的相同范围问题,是的,您可以。
    【解决方案2】:

    它们通常是相同的,但如果在您的范围内,请参见示例,警报函数被重新定义,那么 alert 和 window.alert 将不是同一个函数。

    (function () {
        function alert(test) {
            document.write(test);
        }
    
        alert("hello page");
       window.alert("hello world");
    })()
    

    希望这个例子比我的解释更能说明这个问题。

    你也可以用一个变量来隐藏函数名,并在调用它时得到一个错误。

    (function () {
        var alert;
        alert("Why don't you work, silly function?");
    })()
    

    【讨论】:

      猜你喜欢
      • 2016-06-11
      • 2010-10-02
      • 2011-12-12
      • 2010-09-16
      • 2012-03-14
      • 2012-02-06
      • 2011-02-25
      • 2011-11-22
      • 2015-03-26
      相关资源
      最近更新 更多