第一个函数包含输入,第二个函数包含 if/else 逻辑。我首先在内部调用第二个函数,但 if/else 语句似乎不起作用。
var choice = function(){
var userChoice = prompt("Do you choose rock, paper or scissors?");
var computerChoice = Math.random();
if (computerChoice < 0.34) {
computerChoice = "rock";
} else if(computerChoice <= 0.67) {
computerChoice = "paper";
} else {
computerChoice = "scissors";
} console.log("Computer: " + computerChoice);
compare(userChoice, computerChoice);
};
var compare = function(choice1, choice2){
if(choice1 === choice2){
return "The result is a tie!";
}
else if(choice1 === "rock"){
if(choice2 === "scissors"){
return "rock wins";
}
else{
return "paper wins";
}
}
else if(choice1 === "paper"){
if(choice2 === "rock"){
return "paper wins";
} else{
return "scissors wins";
}
}
else if(choice1 === "scissors"){
if(choice2 === "rock"){
return "rock wins";
} else{
return "scissors wins";
}
}
else{
return "invalid input";
}
};
choice();
最佳答案
效果很好。
compare(userChoice, computerChoice)
返回适当的结果。
但是,您没有显示它。因此用 alert()
等显示它:
alert(compare(userChoice, computerChoice));
关于Javascript:在另一个函数中调用一个函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47108146/