Javascript 如果,否则石头剪刀布游戏
我只是在为if,else语句做一些练习,我做了一个非常简单的石头剪刀游戏,但由于某些原因它没有返回或控制台。记录任何东西!它只是返回未定义的。我根本不知道我做错了什么Javascript 如果,否则石头剪刀布游戏,javascript,Javascript,我只是在为if,else语句做一些练习,我做了一个非常简单的石头剪刀游戏,但由于某些原因它没有返回或控制台。记录任何东西!它只是返回未定义的。我根本不知道我做错了什么 var answer = prompt("Rock, paper or scissors?"); if (answer === "rock") { console.log("tie"); } else if (answer === "paper") { console.log("you win!"); } else
var answer = prompt("Rock, paper or scissors?");
if (answer === "rock") {
console.log("tie");
}
else if (answer === "paper") {
console.log("you win!");
}
else {
console.log(answer === "You Lose!");
}
我做错了什么 变化
console.log(answer==="You Lose!");
到
多亏了威廉·乔治,这对我来说很好。展示它的工作原理
您正在输入哪些不起作用的内容?但是,您的代码可能如下所示:
var answer=prompt("Rock, paper or scissors?");
if (answer==="rock"){
console.log ("tie");
}
else if(answer==="paper"){
console.log("you win!");
}
else {
console.log("You Lose!"); //you shouldn't be setting the answer variable here, just outputting a console.log message
}
编辑:正如Luke B所指出的,您没有设置变量,而是打印比较结果。也就是说,答案的答案===“你输了”总是会是假的,除非你输入的是你输了而不是石头、布或剪刀。它返回的是未定义的,但在返回程序的答案之后。它工作得很好,只需仔细查看控制台的响应。我认为这只是纠正一些语法和间距的问题。我又做了一次,它似乎奏效了 检查您在答案中得到了什么,尝试在if语句之前打印出答案字符串,看看它是什么当然您的最终条件不是您想要的:console.loganswer==您输了!;你还需要严格的检查吗?你是想记录真实还是输了!?代码永远不会返回未定义的。它对我来说很好:。它不会在任何地方输出未定义的内容。请对您的问题提供更好的解释。他没有设置答案变量,他只是比较它并打印一个布尔值。
var answer=prompt("Rock, paper or scissors?");
if (answer==="rock"){
console.log ("tie");
}
else if(answer==="paper"){
console.log("you win!");
}
else {
console.log("You Lose!"); //you shouldn't be setting the answer variable here, just outputting a console.log message
}