javascript - 使用 HTML 和 javascript 猜数字游戏
问题描述
您好,我有一个简单的脚本:
var play = true;
var correct = false;
var number = 0;
var guess = 0;
while (play) {
// random number between 1 and 10.
number = Math.floor(Math.random() * 10 - 1);
if (number == 0) number = 1;
while (!correct) {
guess = window.prompt("What is the number?");
if (guess < number) {
alert("Guess higher ;)");
} else if (guess > number) {
alert("Guess lower ;)");
} else if (guess == number) {
correct = true;
alert("You got it!");
}
}
if (window.prompt("Do you want another game?", "yes") != "yes") {
play = false;
}
}
当我得到正确的号码并提示“你想要另一场比赛吗?” 并输入“是”,程序重新显示并停留在“你想要另一个游戏吗?”。
解决方案
您需要重置correct
每个播放循环的状态:
let play = true;
while (play) {
let number = Math.floor(Math.random() * 10 + 1);
let guess = 0;
let correct = false;
while (!correct) {
guess = window.prompt("What is the number?");
if (guess < number) {
alert("Guess higher ;)");
} else if (guess > number) {
alert("Guess lower ;)");
} else if (guess == number) {
correct = true;
alert("You got it!");
}
}
if (window.prompt("Do you want another game?", "yes") != "yes") {
play = false;
}
}
推荐阅读
- c - 没有鼠标的win32,如何将键盘快捷键分配给按钮
- java - 如何在 Webflux 功能端点的测试中禁用 Spring Security
- azure-ad-graph-api - 如何设置获取使用 Graph API 的 Token
- sql - 如何将包含自身的值放入 SQL 中的查询
- python - 在python中拆分子字典
- c# - 检查 MS-Access 数据库是否已经打开,如果打开消息用户,请等待并重试(使用 VB.net 中的线程)
- php - PHP strip_tag 和 htmlspecialchars 不适用于多个输入
- javascript - 如何在角度分量中嵌入 vimeo 视频?
- powershell - Powershell - 我可以在条件中使用字符串作为对象吗?
- react-native - react-navigation 5.0 - 屏幕两侧的抽屉