全局变量在从另一个js文件访问时失去它的值
Javascript: Global variable loses its value when accessed from another js file
我正在使用nodejs
和socket.io
制作应用程序(游戏)。
我有几个javascript文件,三个要考虑这里:userDetails.js
, board.js
和modal.html
。
现在让userDetails.js
文件声明一个变量:var myUserName
。由于它是全局的,我希望它也可以从其他文件访问。
我的board.html
文件加载board.js
文件。board.js
文件的子代码是:
window.onload = init;
function init() {
setUserName();
. . .
}
function setUserName(){
var myUrl = window.location.href;
myUserName = myUrl.slice(muUrl.indexOf("?")+1,myUrl.indexOf("!"));
//here myUserName gets some value like "John"
}
我的modal.html
的子代码是:
<script type="text/javascript" src="Scripts/userDetails.js"></script>
<script>
. . .
document.getElementById("username").innerHTML = MyUserName;
//myUserName loses its value here. Its undefined.
showNow();
</script>
showNow()
函数显示模态。
问题:当显示模式时,用户名id的值显示为"undefined"。myUserName
有一些值,那么为什么它在modal.html
文件中被视为"未定义"
这是未定义的,因为您在声明它为var myUserName
时使用大写字母MyUsername
来调用它
我想你可能忘记在userDetails add的末尾导出myUserName
module.exports = myUserName;
,并在需要的地方添加
var myUserName = require("yourPath/userDetails.js");
相关文章:
- 访问布局信息是否也会导致浏览器重排
- Javascript,访问一个主要对象模块模式中的每个对象
- 如何访问声音管理器2创建的声音对象
- 在Twitter上用ie9中的空白src访问iframe的contentWindow
- JavaScript Pub/Sub属性访问问题
- 从JavaScript访问struts操作中的属性
- 是否可以从父类访问子类的属性
- 如何访问fastOpt.js
- 访问JSON对象内部的数组元素
- 从模块内部访问Express装载路径
- 难以访问的JS环境中的语法错误
- 如何从对象的原型方法访问JavaScript对象属性
- 访问json数组中的对象
- 通过javascript/html访问twitter共享iframe
- Dojo:访问dijit.form.Select中单击的项目
- 为什么在这个网站上不能通过JS访问元素
- 从ng模板访问作用域
- jQuery 样板 - 失去对“this”作用域的访问权限
- 可访问性-失去焦点,我应该强迫焦点下一个焦点
- 全局变量在从另一个js文件访问时失去它的值