如果声明不起作用,则为岩石,纸,剪刀

问题描述 投票:0回答:1

该代码在“ if语句”之前一直有效。我认为逻辑是正确的,但我想语法是错误的。我希望代码足够清晰。我在HTML中有3个用于岩石,纸张和剪刀的按钮,每个按钮都具有“ onclick”功能。例如,当按下“摇滚”按钮时,“摇滚”将显示在h3 id =“ yourChoice”中。我想在if语句中比较另一个h3 id =“ computerChoice”,但没有预期的结果。谢谢!

var rock = document.getElementById("rock");
var paper = document.getElementById("paper");
var scissors = document.getElementById("scissors");

var computerChoice = document.getElementById("computer_choice");
var yourChoice = document.getElementById("your_choice");

var finalScore = document.getElementById("final_score");


function random(mn, mx){
    return Math.random()*(mx - mn) + mn;
}
function userRock(){
    computerChoice.innerHTML = arr[Math.floor(random(1, 4))-1];
    yourChoice.innerHTML = "rock";
}
function userPaper(){
    computerChoice.innerHTML = arr[Math.floor(random(1, 4))-1];
    yourChoice.innerHTML = "paper";
}
function userScissors(){
    computerChoice.innerHTML = arr[Math.floor(random(1, 4))-1];
    yourChoice.innerHTML = "scissors"
}

//the following part is not working
if(yourChoice.innerHTML == "paper" && computerChoice.innerHTML == "paper"){
    finalScore.innerHTML == "It`s a tie";
}else if(yourChoice.innerHTML == "paper" && computerChoice.innerHTML == "scissors"){
    finalScore.innerHTML = "You lose!";
}else if(yourChoice.innerHTML == "paper" && computerChoice.innerHTML == "rock"){
    finalScore.innerHTML = "You win";
}else if(yourChoice.innerHTML == "rock" && computerChoice.innerHTML == "paper"){
    finalScore.innerHTML = "You lose!";
}else if(yourChoice.innerHTML == "rock" && computerChoice.innerHTML == "rock"){
    finalScore.innerHTML = "It`s a tie";
}else if(yourChoice.innerHTML == "rock" && computerChoice.innerHTML == "scissors"){
    finalScore.innerHTML = "You win!";
}else if(yourChoice.innerHTML == "scissors" && computerChoice.innerHTML == "scissors"){
    finalScore.innerHTML = "It`s a tie";
}else if(yourChoice.innerHTML == "scissors" && computerChoice.innerHTML == "rock"){
    finalScore.innerHTML = "You lose!";
}else if(yourChoice.innerHTML == "scissors" && computerChoice.innerHTML == "paper"){
    finalScore.innerHTML = "You win!";
}else{
finalScore.innerHTML = "End of game!";
}
javascript if-statement
1个回答
0
投票

通过使用var yourScore = document.getElementById("your_score");,您仅获取元素而不是值。

比较应为

yourChoice.innerHTML == "paper" && computerChoice.innerHTML == "paper"
© www.soinside.com 2019 - 2024. All rights reserved.