Javascript数字猜测游戏-设置计数器&;while循环
我试图用Javascript创建一个随机数字猜测游戏,将用户输入与math.random方法生成的数字进行比较。我对如何正确设置柜台感到困惑。我必须验证数字,用“太高”、“太低”或“你赢了”来显示每个猜测,然后在最后显示“秘密”数字。不知道我做错了什么!现在它正在覆盖每个答案,计数器保持在#5Javascript数字猜测游戏-设置计数器&;while循环,javascript,Javascript,我试图用Javascript创建一个随机数字猜测游戏,将用户输入与math.random方法生成的数字进行比较。我对如何正确设置柜台感到困惑。我必须验证数字,用“太高”、“太低”或“你赢了”来显示每个猜测,然后在最后显示“秘密”数字。不知道我做错了什么!现在它正在覆盖每个答案,计数器保持在#5 函数myFunction(){ var userInput=document.getElementById(“text”).value; //测试1到999之间的有效输入号码 如果(用户输入999){ 警
函数myFunction(){
var userInput=document.getElementById(“text”).value;
//测试1到999之间的有效输入号码
如果(用户输入<0 | |用户输入>999){
警报(“您的号码必须在1到999之间”);
}否则{
警报(“输入正常”);
}//结束函数myFunction
var randomNum=Math.floor(Math.random()*999)+1;
var userInput=document.getElementById(“text”).value;
var计数器=0;
var totalGuesses=0;
while(totalguesss这里不需要while循环
。只要它进入while循环,它就会将计数器
增加到5
将while循环
取出,它将执行您希望它执行的操作
我认为您不需要totalGuesses
编辑:
因此,我进一步研究了您的代码。为了实现您希望它实现的功能,请不要将所有内容都放在myFunction
中,以下是步骤:
创建一个随机数
创建一个计数器
一个绑定到onclick
的函数,这是主要逻辑所在。下面是您需要做的
Integer
随机数比较
计数器
计数器
达到极限,则发出警报并显示结果我不打算写下代码,我想你会明白的。为什么你同时有
计数器
和总猜测
变量?看起来你会有一个无休止的循环,因为你永远不会增加总猜测
。你也永远不会测试当前猜测是否正确,你只会检查它是否太低或其他e假设它太高了。而且用户从来没有机会改变他们的猜测。问题是你的while循环
不依赖于点击事件,所以它一直在运行。你应该把计数器++;
和总猜测+
放在点击处理程序中,检查总猜测
不高于5我认为t这正是我感到困惑的地方……这可能是TotalGuesss++。这太让我不知所措了。:)啊,好吧……谢谢!它正在下降——当你说在单击处理程序内部时,你是指onclick=“myFunction(counter++”)?
function myFunction() {
var userInput = document.getElementById("text").value;
// test for valid input number from 1 to 999
if (userInput < 0 || userInput > 999) {
alert("Your number must be from 1 to 999");
} else {
alert("Input OK");
} // end function myFunction
var randomNum = Math.floor(Math.random()* 999)+1;
var userInput = document.getElementById("text").value;
var counter = 0;
var totalGuesses = 0;
while (totalGuesses <= 5) {
counter++;
document.getElementById('loopResults').innerHTML = "<p>You have made" + counter + "guesses</p>";
if (userInput < randomNum) {
document.getElementById('loopResults').innerHTML += "<p>Your guess is too low!</p>";
} else {
document.getElementById('loopResults').innerHTML += "<p>Your guess is too high!</p>";
}
}
}
</script>
</head>
<body>
<h1>Guessing Game</h1>
<p id="loopResults"></p>
<form action="" method="post" enctype="multipart/form-data" name="userData">
<input name="userInput" id="text" type="text" size="10" /> - Enter a number from 1-999!</form>
<p><span style="background-color:#066aff; color: #ffffff; padding: 5px;" onclick="myFunction();" >enter number</span>
</p>
</body>