【发布时间】:2016-03-14 08:05:35
【问题描述】:
功能:
用户根据猜谜游戏输入颜色。答案错误时提示会一直提示,只有当用户设置正确答案时才会退出提示。
我做了什么: 使用了一个while循环来检查条件。在while循环中,设置了while循环只有在相当于target时才结束,target是系统随机选取的颜色
问题: 提示最初将颜色设置为答案,但即使用户设置了正确的答案,提示也会不断循环。
设置其中一种颜色时如何退出循环?
<html>
<head>
<title>Color Guessing Game</title>
</head>
<body onload="do_game()">
<script>
function do_game() {
var color = ["blue", "cyan", "gray", "green", "magenta", "orange", "red", "white", "yellow"];
var guess_input_text, guess_input, finished = false,
target, guesses = 0;
var target_index = color[0, 8];
target = target_index;
alert(target);
while (!finished) {
guess_input_text = prompt("I am thinking of these colors:" +
"\n\n blue, cyan, gray, green, magenta, orange, red, white, yellow" + "\n\n what color am I thinking of?");
guess_input = parseInt(guess_input_text);
guesses += 1;
finished = target;
}
}
</script>
</body>
</html>
【问题讨论】:
-
你永远不会修改
finished变量。 -
您需要在某个时间点设置 finished = true 才能跳出循环。为什么你的行“finished = check_guess();”评论了?您需要在该函数中添加条件并返回布尔值
-
您应该先实现 check_guess 功能,然后只有我们可以帮助您。
-
@zerkms 更新了问题
-
@SwarnenduPaul 更新了问题
标签: javascript arrays while-loop