石头剪刀布 javascript 代码不起作用。我把它作为我的第一个项目,但我根本不知道为什么它不起作用

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

function playRound(playerSelection, computerSelection) {
   
    if (playerSelection == computerSelection) {
        console.log("its a tie")

       } else if (playerSelection == "rock" && computerSelection == "paper") {
        return "you lose" 

     } else if (playerSelection == "rock" && computerSelection == "scissors") {
        
        return "you win"  

     }  else if (playerSelection == "paper" && computerSelection == "scissors") {
        return "you lose" 

     } else if (playerSelection == "paper" && computerSelection == "rock") {
        return "you win" 

     } else if (playerSelection == "scissors" && computerSelection == "rock") {
        return "you lose" 

     } else if (playerSelection == "scissors" && computerSelection == "paper") {
        return "you win" 
     }    
}
   
let playerSelection = parseInt(prompt("input rock paper or scissors"))
let computerSelection = Math.random();

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

console.log(playRound(playerSelection, computerSelection))



  

我知道这可能不是最好的方法,但我认为它应该完成工作,任何帮助都是有用的,因为我不知道错误可能在哪里,谢谢。我查看了其他一些帖子,但找不到解决方案。这是我的第一篇文章,所以如果缺少一些信息或有什么东西,请告诉我!

javascript function if-statement undefined
1个回答
0
投票

有几个问题

  1. 系好后不返回。
  2. 将提示转换为 int。

尝试以下方法

function playRound(playerSelection, computerSelection) {
  if (playerSelection === computerSelection) {
    return 'its a tie';
  } else if (playerSelection === 'rock' && computerSelection === 'paper') {
    return 'you lose';
  } else if (playerSelection === 'rock' && computerSelection === 'scissors') {
    return 'you win';
  } else if (playerSelection === 'paper' && computerSelection === 'scissors') {
    return 'you lose';
  } else if (playerSelection === 'paper' && computerSelection === 'rock') {
    return 'you win';
  } else if (playerSelection === 'scissors' && computerSelection === 'rock') {
    return 'you lose';
  } else if (playerSelection === 'scissors' && computerSelection === 'paper') {
    return 'you win';
  }
}

let playerSelection = prompt(`Type 'rock' or 'paper' or 'scissors'`)

let computerSelection = Math.random();
if (computerSelection < 0.34) {
  computerSelection = 'rock';
} else if (computerSelection <= 0.67) { 
  computerSelection = 'paper';
} else {
  computerSelection = 'scissors';
}

console.log(playRound(playerSelection, computerSelection));

© www.soinside.com 2019 - 2024. All rights reserved.