2015-08-08 80 views
0

我有一个问题,我得到一个语法错误(意外的其他) 下面是我的代码。我认为这将是一个“大括号”或分号问题意外的令牌else codecademy

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); 

var compare = function(choice1, choice2) { 
     if (choice1 === choice2) { 
      return "The result is a tie!"; 

     } else if (choice1 === "rock") { 
      if (choice2 === "scissors") { 
       return "rock swins"; 
      } 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" 
       } 
      } 
     }; 

任何帮助,将不胜感激。谢谢

+2

你有if - > else - > else if。这是行不通的。 –

+0

谢谢你的帮助! –

回答

1

请在下面的代码中,我添加了一个缺少的最后其他部分的关闭括号else if (choice1 === "paper")

var compare = function(choice1, choice2) { 
    if (choice1 === choice2) { 
     return "The result is a tie!"; 

    } else if (choice1 === "rock") { 
     if (choice2 === "scissors") { 
      return "rock swins"; 
     } 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" 
      } 
     } 
    } 
}; 

让我知道是否还有任何错误。