[英]How to keep track of attempts in a JavaScript number guessing game?
我试图跟踪进行了多少次猜测,然后在猜到正确数字时打印该数字。 当猜测错误的数字时,猜测的数量不会被更新,所以它一直显示它只需要 1 次猜测,而实际上需要更多。
let num = Math.floor(Math.random() * 20) + 1;
console.log(num);
let num_guess = 0
function do_guess() {
let guess = Number(document.getElementById("guess").value);
let num_guess = 1
let message = document.getElementById("message");
if (isNaN(guess)) {
message.innerHTML = 'That is not a number!';
}
else if (guess > 20) {
message.innerHTML = 'That number is not in range, try again.'
num_guess+=;
}
else if (guess > num) {
message.innerHTML = "No, try a lower number."
num_guess+=;
}
else if (guess < num) {
message.innerHTML = "No, try a higher number."
num_guess+=;
}
else if (guess == num) {
message.innerHTML = "You got it! It took you " + num_guess + " tries.";
}
}
<!doctype html>
<head>
<title>Higher - Lower</title>
</head>
<body>
<div class="container">
<h1>Higher Lower</h1>
<p>Guess a number between 1 and a maximum number of your choosing!</p>
<div class="row">
<div class="col-lg-3 col-md-6">
<form>
<div class="form-group">
<label>Your guess:</label>
<input type="text" id="guess" class="form-control">
</div>
<button type="button" class="btn btn-primary" onclick="do_guess()">Guess</button>
</form>
</div>
</div>
<p id="message"></p>
</div>
<script src="higherlower.js"></script>
</body>
```
let num_guess = 1
您声明变量两次,每次调用 function 时,它将设置为 1。
num_guess+=;
这不会增加变量。 见下文。
let num = Math.floor(Math.random() * 20) + 1;
console.log(num);
let num_guess = 0;
function do_guess() {
let guess = Number(document.getElementById("guess").value);
let message = document.getElementById("message");
if (isNaN(guess)) {
message.innerHTML = 'That is not a number!';
}
else if (guess > 20) {
message.innerHTML = 'That number is not in range, try again.'
num_guess += 1;
}
else if (guess > num) {
message.innerHTML = "No, try a lower number."
num_guess += 1;
}
else if (guess < num) {
message.innerHTML = "No, try a higher number."
num_guess += 1;
}
else if (guess == num) {
message.innerHTML = "You got it! It took you " + num_guess + " tries.";
}
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.