这是我的文件写出方式的基础。我有一个位于head元素顶部的外部JavaScript文件。在它下面,我已经编写了它的参考内容。我希望,因为代码低于文件它可以工作,但事实并非如此。它仅在我将代码包装在window.onload()
函数中时才有效。或者,如果我将代码放在body元素的脚本中。
<html>
<head>
<script type="text/javascript" src="myJavaScript.js"></script>
<script type="text/javascript">
console.log(w); // w is a variable inside myJavaScript.js but throws an error stating "w is not defined".
</script>
</head>
<body></body>
</html>
为什么这段代码会这样?我将文件写在代码之上,该代码调用其中的内容但它仍然不起作用。
编辑:我发现了错误,而且我没有在全局范围内定义myJavaScript.js中的代码。这就是变量w永远无法通过的原因。答案 0 :(得分:2)
答案 1 :(得分:2)
您必须向我们展示myJavaScript.js
中的相关代码,以便我们知道实际发生了什么,但很明显w
未定义在myJavasScript.js
的全局范围内1}}或myJavaScript.js
未成功加载。
很可能w
实际上并不像您认为的那样是全局范围的变量。
答案 2 :(得分:1)
美元到甜甜圈,w
正在设置onload
。