问题被打印两次(提供正确答案后)JavaScript
The question is printed twice ( after providing the right answer ) JavaScript
我想做的是让用户提供答案(布 - 石头 - 剪刀)。
我获取用户的输入并应用 while 循环逻辑来检查答案是否是三种可能性之一。
问题是第一次弹出提示时我提供(三种可能性之一)它再次询问我,在它再次询问我并应用它正常工作的三种可能性之一之后。
我的问题是为什么在这种情况下它会问两次?
提前致谢
/*代码*/
const Rock = "rock";
const Paper = "paper";
const Scissors = "scissors";
const userInput = () => {
const askingQuestion =
"Please choose between the following : Rock Paper or Scissors";
let captureUserInput = prompt(askingQuestion).toLowerCase();
while (
captureUserInput !== Rock ||
captureUserInput !== Paper ||
captureUserInput !== Scissors
) {
captureUserInput = prompt(askingQuestion);
if (
captureUserInput === Rock ||
captureUserInput === Paper ||
captureUserInput === Scissors
) {
document.write(
`Your Answer is right ! and you choose ${captureUserInput}`
);
break;
}
}
};
const computerInput = () => {
const computerChoice = Math.floor(Math.random() * 3);
console.log(computerChoice);
};
userInput();
computerInput();
你可以不用循环
const Rock = "rock";
const Paper = "paper";
const Scissors = "scissors";
const userInput = () => {
const askingQuestion =
"Please choose between the following : Rock Paper or Scissors";
let captureUserInput = prompt(askingQuestion).toLowerCase();
if (captureUserInput === Rock ||
captureUserInput === Paper ||
captureUserInput === Scissors) {
console.log('valid')
} else {
console.log('Invalid')
//call again recursive
userInput()
}
};
const computerInput = () => {
const computerChoice = Math.floor(Math.random() * 3);
console.log(computerChoice);
};
userInput();
computerInput();
这样您将减少代码和执行时间
我想做的是让用户提供答案(布 - 石头 - 剪刀)。 我获取用户的输入并应用 while 循环逻辑来检查答案是否是三种可能性之一。 问题是第一次弹出提示时我提供(三种可能性之一)它再次询问我,在它再次询问我并应用它正常工作的三种可能性之一之后。
我的问题是为什么在这种情况下它会问两次? 提前致谢
/*代码*/
const Rock = "rock";
const Paper = "paper";
const Scissors = "scissors";
const userInput = () => {
const askingQuestion =
"Please choose between the following : Rock Paper or Scissors";
let captureUserInput = prompt(askingQuestion).toLowerCase();
while (
captureUserInput !== Rock ||
captureUserInput !== Paper ||
captureUserInput !== Scissors
) {
captureUserInput = prompt(askingQuestion);
if (
captureUserInput === Rock ||
captureUserInput === Paper ||
captureUserInput === Scissors
) {
document.write(
`Your Answer is right ! and you choose ${captureUserInput}`
);
break;
}
}
};
const computerInput = () => {
const computerChoice = Math.floor(Math.random() * 3);
console.log(computerChoice);
};
userInput();
computerInput();
你可以不用循环
const Rock = "rock";
const Paper = "paper";
const Scissors = "scissors";
const userInput = () => {
const askingQuestion =
"Please choose between the following : Rock Paper or Scissors";
let captureUserInput = prompt(askingQuestion).toLowerCase();
if (captureUserInput === Rock ||
captureUserInput === Paper ||
captureUserInput === Scissors) {
console.log('valid')
} else {
console.log('Invalid')
//call again recursive
userInput()
}
};
const computerInput = () => {
const computerChoice = Math.floor(Math.random() * 3);
console.log(computerChoice);
};
userInput();
computerInput();
这样您将减少代码和执行时间