window.confirm()和just confirm()之间的区别

时间:2013-10-16 13:09:37

标签: javascript

window.confirm()confirm()之间有什么区别?类似于alert()prompt()

我每次都需要写window.吗?

3 个答案:

答案 0 :(得分:4)

每个“独立”函数实际上都是window对象的一种方法。由于window对象是默认上下文,因此它始终是隐式的。致电alertwindow.alert是一样的。

答案 1 :(得分:0)

JavaScript中的所有东西都是对象并且有方法,但window对象是默认的,所以如果你调用类似函数的东西,你实际上调用window的方法。

但是,如果您拥有与window对象相同的自己的函数,则可能存在差异。

甚至可以使用阴影方法使其不起作用,例如:

(function () {
    var alert;
    alert("Not working...");
})()

答案 2 :(得分:0)

没有,不在实际功能中。

当您单独调用alert()时,脚本首先在当前作用域中查找名为alert的变量,并在其存在时调用它。否则,它会在最终到达window.alert并调用它之前向上移动范围链。

但是,如果你有这样的代码:

(function() {
   var alert = function(str) { /* my cool overlay popup function */ };
   // do stuff
   alert("Hello, World!"); // calls my custom overlay
   window.alert("Hello, World!"); // calls the native alert
})();

(话虽如此,我将自定义叠加层定义为AlertConfirm和多用途Dialog,以防止混淆)