<html>
<head>
<script>
var play;
var target;
var count = 0;
var guess;
var colors = ["blue ", "coral ", "orchid ", "red ", "cyan ", "dark orange", "aqua ", "yellow ", "gold ", "brown "];
var colors = colors.sort();
function do_this() {
var choose = Math.floor(Math.random() * (colors.length));
target = colors[choose];
alert("The correct answer is " + target);
alert(typeof(colors));
while (true) {
play = prompt("I am thinking one of these colors\n\n" + colors + "What color am I thinking of?");
guess = colors.indexOf(play);
count = count + 1;
if (guess == -1) {
alert("Sorry, I don't recognize your color");
continue;
}
if (guess > target) {
alert("Sorry, your guess is not correct\n\n" + "Hint: your color is alphabetically higher than mine\n\n Please try again");
continue;
}
if (guess < target) {
alert("Sorry, your guess is not correct\n\n" + "Hint: your color is alphabetically lower than mine\n\n Please try again");
continue;
}
alert("Congratulations! You have guessed the color\n\n!" + "It took you" + count + "guesses to finish the game\n\n" +
"You can see the color of the background");
return true;
}
}
</script>
<body onload = "do_this()">
</body>
</head>
</html>
当我尝试运行时,即使输入了正确的颜色,它也会显示“对不起,我不认出你的颜色”,当我尝试检查它在猜测中显示的值是-1时。请帮忙!Javascript:这段代码有什么问题?
它确实工作,当您在提示中的颜色名称之后输入空格时 –