Javascript 早期JS石头剪刀布游戏

Javascript 早期JS石头剪刀布游戏,javascript,Javascript,我在试着做一张岩石纸。。但似乎只有当我打成平局时,代码才起作用。我可能在下楼的时候把它弄糟了。我还想问一下,你在提示窗口中填写的数字是字符串还是数字? 感谢您的帮助,谢谢 // rock beats scissors (1 beats 3) // paper beats rock (2 beats 1) // scissors beat paper (3 beat 2) var player1= prompt("Player ONE, choose (1) for rock, (2) fo

我在试着做一张岩石纸。。但似乎只有当我打成平局时,代码才起作用。我可能在下楼的时候把它弄糟了。我还想问一下,你在提示窗口中填写的数字是字符串还是数字? 感谢您的帮助,谢谢

// rock beats scissors (1 beats 3)
// paper beats rock (2 beats 1)
// scissors beat paper (3 beat 2)


 var player1= prompt("Player ONE, choose (1) for rock, (2) for paper, (3) for scissors");
 var player2 = prompt("Player TWO, choose (1) for rock, (2) for paper, (3) for scissors");

 function game (player1,player2)
 {

    if (player1===player2){
    alert("its a tie");
    }
    else
    { 
      if (player1+player2==="4")
      {
        if(player1==="1"){
        alert("Rock beats Scissors, Player one wins");
        }else {
        alert("Rock beats Scissors, Player Two wins");
        }

      }
      if (player1+player2==="3")
        {
         if (player1==="1"){
            alert("paper beats rock, player One wins");
         }else {
          alert ("paper beats rock, player Two wins");
          }
         }  
      if (player1+player2==="5")
        {
          if (player1==="3"){
            alert("scissors beats paper, Player One wins");
            }else{
            alert("scissors beats papaer, player Two wins");
            }

        }
    }
};
game(player1,player2);

您正在连接字符串,而不是添加数字,因此您的
player1+player2==“3”
将实际生成
12
21
。首先要将字符串转换为数字

将此代码放在领带检查的else块顶部

player1 = parseInt(player1);
player2 = parseInt(player2);

作为扩展,您需要对播放器输入进行清理,以确保它只包含数字,因为如果传递的不是数字字符串,则此方法将失败。

您正在连接字符串,而不是添加数字,因此您的
player1+player2==“3”
将实际生成
12
21
。首先要将字符串转换为数字

将此代码放在领带检查的else块顶部

player1 = parseInt(player1);
player2 = parseInt(player2);

作为扩展,您需要对播放器输入进行清理,以确保它只包含数字,因为如果传递的不是数字字符串,则此方法将失败。

您正在对播放器1..2变量进行字符串连接,而不是整数运算

请注意,您还需要更改比较,而不仅仅是将字符串解析为int

尝试:


您正在对player1..2变量进行字符串连接,而不是整数运算

请注意,您还需要更改比较,而不仅仅是将字符串解析为int

尝试:


除了Ruirize所写的,还有另一个错误:

player1+player2==“4”
行中,您试图添加两个整数,然后将它们与字符串进行比较

=
运算符不仅比较值,还比较类型。当您将整数与字符串进行比较时,它将返回false

使用comperator,其中数字4等于字符串“4”,或者与数字4进行比较:

player1+player2 === 4

除了Ruirize所写的,还有另一个错误:

player1+player2==“4”
行中,您试图添加两个整数,然后将它们与字符串进行比较

=
运算符不仅比较值,还比较类型。当您将整数与字符串进行比较时,它将返回false

使用comperator,其中数字4等于字符串“4”,或者与数字4进行比较:

player1+player2 === 4

试试这个!希望有帮助

--javascript code for rock, paper, scissors...--

var userChoice = prompt("Please type in your choice : rock , paper or scissors?");
var computerChoice = Math.random();

if (computerChoice < 0.34)
{
    computerChoice = "rock";
}
else if(computerChoice <= 0.67)
{
    computerChoice = "paper";
}
else {
    computerChoice = "scissors";
}

var compare = function (userChoice, computerChioce)
{
    if (userChoice === computerChioce)
    {
        return "The result is a tie!";
    }
    else if (userChoice === "rock")
    {
        if(computerChioce === "scissors")
        {
            return "rock wins" + " ," + "rock breaks scissors";
        }
        else if (computerChioce === "paper")
        {
            return "paper wins" +  " ,"  + "paper captures rock";
        }
    }
    else if (userChoice === "paper")
    {
        if (computerChioce === "rock")
        {
            return "paper wins" +  ", "  + "paper captures rock";
        }
        else if (computerChioce === "scissors")
        {
            return "scissors win" + ", " + "scissors cuts paper";
        }
    }
    else if (userChoice === "scissors")
    {
        if (computerChioce === "rock")
        {
            return "rock wins" + " " + "rock breaks scissors";
        }
        else if (computerChioce === "paper")
        {
            return "scissors win" + ", " + "scissors cuts paper";
        }
    }
};

console.log("You chose" + " " + userChoice + ".");
console.log("Computer chose" + " " + computerChoice + ".");
compare (userChoice, computerChoice);
——岩石、布、剪刀的javascript代码--
var userChoice=prompt(“请输入您的选择:石头、布或剪刀?”);
var computerChoice=Math.random();
如果(计算机选择<0.34)
{
computerChoice=“rock”;
}

否则如果(computerChoice试试这个!希望有帮助

--javascript code for rock, paper, scissors...--

var userChoice = prompt("Please type in your choice : rock , paper or scissors?");
var computerChoice = Math.random();

if (computerChoice < 0.34)
{
    computerChoice = "rock";
}
else if(computerChoice <= 0.67)
{
    computerChoice = "paper";
}
else {
    computerChoice = "scissors";
}

var compare = function (userChoice, computerChioce)
{
    if (userChoice === computerChioce)
    {
        return "The result is a tie!";
    }
    else if (userChoice === "rock")
    {
        if(computerChioce === "scissors")
        {
            return "rock wins" + " ," + "rock breaks scissors";
        }
        else if (computerChioce === "paper")
        {
            return "paper wins" +  " ,"  + "paper captures rock";
        }
    }
    else if (userChoice === "paper")
    {
        if (computerChioce === "rock")
        {
            return "paper wins" +  ", "  + "paper captures rock";
        }
        else if (computerChioce === "scissors")
        {
            return "scissors win" + ", " + "scissors cuts paper";
        }
    }
    else if (userChoice === "scissors")
    {
        if (computerChioce === "rock")
        {
            return "rock wins" + " " + "rock breaks scissors";
        }
        else if (computerChioce === "paper")
        {
            return "scissors win" + ", " + "scissors cuts paper";
        }
    }
};

console.log("You chose" + " " + userChoice + ".");
console.log("Computer chose" + " " + computerChoice + ".");
compare (userChoice, computerChoice);
——岩石、布、剪刀的javascript代码--
var userChoice=prompt(“请输入您的选择:石头、布或剪刀?”);
var computerChoice=Math.random();
如果(计算机选择<0.34)
{
computerChoice=“rock”;
}

否则,如果(computerChoice)仔细阅读您的“纸击摇滚”块v。它需要切换以查找类型,只需使用函数typeof,如此警报(typeof(player1))仔细阅读您的“纸击摇滚”块v。它需要切换以查找类型,只需使用函数typeof,如此警报(typeof(player1))谢谢。非常感谢。非常感谢。非常感谢。非常感谢!谢谢。非常感谢。非常感谢!谢谢。非常感谢。非常感谢。非常感谢。非常感谢。非常感谢。非常感谢。非常感谢