alert和window.alert有什么区别?

scd*_*dmb 31 javascript

alert()window.alert()功能有什么区别?它似乎工作相同.

Kev*_*her 39

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

他们是一样的.

  • 看来this.alert('你好!'); 做同样的工作.我想全局我们在window对象里面. (5认同)

Ein*_*eki 27

它们通常是相同的,但是,如果在您的范围内,请参阅示例,警报功能已重新定义,然后警报和window.alert将不是相同的功能.

(function () {
    function alert(test) {
        document.write(test);
    }

    alert("hello page");
   window.alert("hello world");
})()
Run Code Online (Sandbox Code Playgroud)

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

您还可以使用变量隐藏函数名称,并在调用时获取错误.

(function () {
    var alert;
    alert("Why don't you work, silly function?");
})()
Run Code Online (Sandbox Code Playgroud)