JavaScript - Prompt inside function 不出现在屏幕上,但出现在函数外

JavaScript - Prompt inside function doesn't appear on screen, but does outside the function

我正在构建一个应该需要 5 轮的石头剪刀布项目。用户将得到提示并输入“石头”、“布”或“剪刀”。当我这样写代码时:

let playerSelection = prompt("Rock, paper ou scissors?").toLowerCase();


let game = function() {
  for (let i = 0; i < 5; i++) {

    compare(playerSelection, computerPlay);
      if (compare === "You win!") {
       playerScore++;
      }
      else if (compare === "You lose!") {
        computerScore++;
      }
      else if (compare === "It's a tie!") {
  
      }

 }
}

出现提示,我开始输入一些东西,但它只发生一次,循环不起作用。当我将提示放入循环中时,如下所示:

let game = function() {
  for (let i = 0; i < 5; i++) {
    
    let playerSelection = prompt("Rock, paper ou scissors?").toLowerCase();

    compare(playerSelection, computerPlay);
      if (compare === "You win!") {
       playerScore++;
      }
      else if (compare === "You lose!") {
        computerScore++;
      }
      else if (compare === "It's a tie!") {
  
      }

 }
}

提示永远不会出现! 如何解决这个问题并让它提示5次?

我认为你的比较函数有一些错误。查看其工作正常下方的代码段。

const compare = function(playerSelection, computerPlay) {

  // write your logic here
  return "You win!";
}
let game = function() {
  for (let i = 0; i < 5; i++) {
    
    let playerSelection = prompt("Rock, paper ou scissors?").toLowerCase();
    const outputs = ["rock", "paper", "scissor"];
    compare(playerSelection, Math.floor(Math.random()*3));
      if (compare === "You win!") {
       playerScore++;
      }
      else if (compare === "You lose!") {
        computerScore++;
      }
      else if (compare === "It's a tie!") {
  
      }

 }
}

game();

嗯,你没有调用函数。 使用

game();

函数定义后