为了练习编码,我使用轮盘制作一个虚拟赌场。为了简单起见,车轮目前只有4个部分,而不是通常的37个。我试图设置一个“金钱”变量,每当玩家旋转轮盘时就进行调整。 IE如果玩家在第4号投注10美元并输掉,他们现在将有190美元而不是200美元。问题是,“货币”变量似乎没有改变,尽管它是一个全局变量。全局变量在函数中不会改变
这是我的一段代码。问题是什么?
var money = 200;
function spin(){
var landing = Math.floor(Math.random() * 4) + 1;
var nsvalue = parseInt(document.regular_roulette.num_select.value);
var betvalue = parseInt(document.regular_roulette.bet.value);
if (landing === nsvalue) {
alert("You win $" + betvalue * 3);
money = money + (betvalue * 3);
} else {
alert("You lose $" + betvalue);
money = money - betvalue;
}
}
document.write("You currently have $" + money);
你是如何调用'文件撰写()'?你应该在你的函数本身中调用它(或以其他方式更新页面)。否则,你只能输出到页面一次;在任何投注发生之前。在**'money'更新之后,您需要更新输出**。 –
你确定你从某处调用'spin()'方法吗?另外问题可能出现在'document.regular_roulette.bet.value'中 - 它可能为零/未定义... – dhilt
请注意'document.write'会覆盖你的文档... –