我的问题: 如何让我的开关识别变量人的全局对象属性currentSpace?
好的,对于一个项目,我有一个对象,让我们称他为人。
var guy = new Object ();
guy.currentSpace = "";
我遇到的问题是,在稍后的功能中,我更改了guy的值并将其显示在一个空段落中
function startTheGame () {
guy["currentSpace"] = space1.name;
var para = document.getElementById("empty");
guy["currentSpace"] = "Current space: " + space1.name;
para.innerHTML = guy.currentSpace;
};
此代码成功显示currentSpace的值。但是,稍后在我的switch语句中,交换机无法获取guy.currentSpace的值。它应该等于space1,因为我将currentSpace的值从空字符串更改为space1对象的name属性(注意:我执行拥有一个单独空间的对象原型,并创建了十个空间对象,所有这些都有一个名称。不用担心)
switch (guy.currentSpace) {
case "space1":
space1.visited = true;
break;
}
case "space2":
space2.visited = true;
break;
default:
para.innerHTML = guy.currentSpace;
相反,它直接进入默认情况。有些东西是不对的,它无法改变para的价值,因为它 说它是未定义的,但我认为变量para已经被声明,所以我所要做的就是将它分配给其他东西