我是编程新手,所以请和我一起裸照。JavaScript:如何停止重新生成随机数?
我创建在其中产生一个随机数(1到50之间),一个孩子的猜数字游戏,你必须继续猜数,直到找到生成的数字。您会收到有关您的猜测是否过高或过低的反馈,以便更好地通知您的猜测。下面是我提出的代码,但问题是,我似乎无法查明随机数。似乎这个数字是每次猜测都重新生成的。我怎么能这样做,以便每个猜测使用相同的数字,直到猜对了?
<!DOCTYPE html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<title>Untitled Document</title>
<link href='http://fonts.googleapis.com/css?family=Source+Sans+Pro' rel='stylesheet' type='text/css'>
<link href="style.css" rel="stylesheet" type="text/css" />
</head>
<body>
<form id ="game" action="javascript:void(checkGuess())">
<p class="owlOne">I'm thinking of a number between 1 and 50.</p>
<br class="clear" />
<p class="owlTwo"><input id="guess" type="text"><input id="button" type="submit" value="Guess!"></p>
<br class="clear" />
<p class="owlOne"><span id="response">Can you guess what it is?</span></p>
</form>
<script>
function checkGuess() {
var guess = Number(document.getElementById('guess').value); // Assigns guessed number to variable.
var number = Math.floor(Math.random() * 49 + 1); // Generates a random number between 1 and 50.
// Guessed number is correct.
if (guess == number) {
document.getElementById("response").innerHTML= "Congratulations, you guessed correctly!";
}
// Guessed number is within 5 above.
else if (guess > number && guess <= number+5) {
document.getElementById("response").innerHTML= "You're so close! Just a little bit lower.";
}
// Guessed number is within 5 below.
else if (guess < number && guess >= number-5) {
document.getElementById("response").innerHTML= "You're so close! Just a little bit higher.";
}
// Guessed number is at least 1, but more than 5 below.
else if (guess < number-5 && guess >= 1) {
document.getElementById("response").innerHTML= "Too low! Guess again.";
}
// Guessed number is no more than 50, but less than 5 above.
else if (guess > number+5 && guess <= 50) {
document.getElementById("response").innerHTML= "Too high! Guess again.";
}
// Guessed number is not within the 1 - 50 range.
else {
document.getElementById("response").innerHTML= "Remember, the number I'm thinking of is between 1 and 50.";
}
}
</script>
</body>
</html>
有什么建议吗?
我想这是“1和50包含”? :-) – RobG