alert和window.alert有什么区别?

时间:2012-11-19 18:32:11

标签: javascript

alert()window.alert()函数之间有什么区别?它似乎也一样。

2 个答案:

答案 0 :(得分:39)

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

他们是一样的。

答案 1 :(得分:26)

它们通常是相同的,但是,如果在你的范围内,参见示例,则重新定义了alert函数,然后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?");
})()