[英]Javascript number guessing game - setting up the counter & while loop
我正在尝试在 Javascript 中创建一个随机数猜测游戏,将用户输入与使用 math.random 方法生成的数字进行比较。 我对如何以正确的方式设置计数器感到困惑。 我必须验证数字,用“太高”、“太低”或“你赢了”来显示每个猜测,然后在最后显示“秘密”数字。 不知道我做错了什么! 现在它正在覆盖每个答案,计数器停留在#5。
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>
这里不需要while loop
。 发生的事情很简单,一旦它进入 while 循环,它就会将您的counter
增加到 5。
取出while loop
,它会做你想做的事。
而且我认为你不需要totalGuesses
编辑:
所以我进一步研究了你的代码。 为了做你想让它做的事情,而不是把所有的东西都放在你的myFunction
,下面是步骤:
创建一个random_number
创建一个counter
绑定到onclick
的函数,这是主要逻辑所在。 这就是您需要做的。
Integer
random_number
进行比较counter
counter
达到限制,警报并显示结果不打算写下代码,我想你可以弄清楚。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.