Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/473.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 未捕获类型错误:对象#<;HTMLDocument>;没有方法';警报';_Javascript - Fatal编程技术网

Javascript 未捕获类型错误:对象#<;HTMLDocument>;没有方法';警报';

Javascript 未捕获类型错误:对象#<;HTMLDocument>;没有方法';警报';,javascript,Javascript,向社区致意,我是javascript新手,我想知道为什么这段代码会给我带来这个错误,谢谢 "use strict"; var myFunction = function(){ document.alert("hola"); }; myFunction(); 控制台(chrome)显示: 未捕获的TypeError:对象#没有方法“警报” 我已经使用jshint更正了任何sintax错误,但它似乎没有错误。这是因为警报()方法属于窗口对象,而不是文档: alert('hola'); 尽管您可

向社区致意,我是javascript新手,我想知道为什么这段代码会给我带来这个错误,谢谢

"use strict";
var myFunction = function(){
document.alert("hola");
};

myFunction();
控制台(chrome)显示:

未捕获的TypeError:对象#没有方法“警报”


我已经使用jshint更正了任何sintax错误,但它似乎没有错误。

这是因为
警报()
方法属于
窗口
对象,而不是
文档

alert('hola');
尽管您可以,但如果出于某种原因,您需要,请使用
window.alert

window.alert('hola');

警报不是文档的方法,而是窗口的方法
与此相反:

document.alert("hola");
试试这个:

window.alert("hola");

这是因为
alert()
属于
window
对象。

函数是
window
对象的一种方法,请参见。

您可能指的是
window.alert
?为了将来的参考,所有全局变量(即“JSON”)都在
window
下,即
window.alert
,如果您的JS环境是web浏览器,则不要使用
文档
@Katana314…@Alnitak Correct。当然,如果你在Rhino上运行一些东西,比如说,alert和你所依赖的大多数globals都不会起作用。你的答案的前半部分只是让人困惑,IMHO。那就更好了!实际上,我喜欢显式地使用
window.alert
1。它更有效,因为它避免了范围上升,2。它允许我只告诉
jshint
有关
窗口的全局信息,而不是其中的所有方法。不是我的否决票,但不,你不必“单独使用函数alert”-它是
窗口
对象的一种方法,因此你可以使用
窗口。alert
由于纠正了它,你是对的,我已经更新了我的答案,再次感谢@Alnitak