Javascript 由于某些原因,掷骰子游戏变量未定义

Javascript 由于某些原因,掷骰子游戏变量未定义,javascript,Javascript,我创建了一个掷骰子游戏。一组图像用于骰子。页面上的两个骰子代表第1局和第2局。骰子值最高的游戏是赢家。显示在页面上的骰子应该以相同的骰子值开始,直到用户刷新页面。当用户刷新页面时,骰子将显示新的随机骰子值。骰子上方将显示一条消息,说明玩家一或二是赢家。然而,在比赛开始前,会出现一条消息,说明比赛是平局。为什么我的最高掷骰和赢家变量未定义 <script type="text/javascript"> var highestDiceRoll = 0; var winner; fun

我创建了一个掷骰子游戏。一组图像用于骰子。页面上的两个骰子代表第1局和第2局。骰子值最高的游戏是赢家。显示在页面上的骰子应该以相同的骰子值开始,直到用户刷新页面。当用户刷新页面时,骰子将显示新的随机骰子值。骰子上方将显示一条消息,说明玩家一或二是赢家。然而,在比赛开始前,会出现一条消息,说明比赛是平局。为什么我的最高掷骰和赢家变量未定义

<script type="text/javascript">

var highestDiceRoll = 0;
var winner;
 function rollDice () {
 player1 = ['<img src="images/dice1.png" alt="Italian Trulli">',
 '<img src="images/dice2.png" alt="Italian Trulli">',
 '<img src="images/dice3.png" alt="Italian Trulli">',
 '<img src="images/dice4.png" alt="Italian Trulli">',
 '<img src="images/dice5.png" alt="Italian Trulli">',
 '<img src="images/dice6.png" alt="Italian Trulli">'];

 player2 = ['<img src="images/dice1.png" alt="Italian Trulli">',
 '<img src="images/dice2.png" alt="Italian Trulli">',
 '<img src="images/dice3.png" alt="Italian Trulli">',
 '<img src="images/dice4.png" alt="Italian Trulli">',
 '<img src="images/dice5.png" alt="Italian Trulli">',
 '<img src="images/dice6.png" alt="Italian Trulli">'];

var randPlayer1 = Math.floor(Math.random() * player1.length);
var randPlayer2 = Math.floor(Math.random() * player2.length);

 var diceRolls = player1[randPlayer1] + " " + player2[randPlayer2];

 if (player1 > player2) {

    highestDiceRoll = player1;
    winner = "Player 1";
  } else if (player2 > player1) {
    highestDiceRoll = player2;
    winner = "Player 2";
  } else {
    winner = "GAME IS A DRAW";
  }

document.write("The winner is "  + winner + "<br />");
   return diceRolls; //return to display dice on page



}

 document.write(rollDice());

</script>

var highestDiceRoll=0;
var赢家;
函数rollDice(){
player1=['',
'',
'',
'',
'',
''];
player2=['',
'',
'',
'',
'',
''];
var randPlayer1=Math.floor(Math.random()*player1.length);
var randPlayer2=Math.floor(Math.random()*player2.length);
变量diceRolls=player1[randPlayer1]+“”+player2[randPlayer2];
如果(播放器1>播放器2){
最高掷骰子=玩家1;
获胜者=“玩家1”;
}else if(player2>player1){
最高掷骰子=玩家2;
获胜者=“玩家2”;
}否则{
winner=“比赛是平局”;
}
记录。填写(“获胜者为“+winner+”
); return diceRolls;//返回到第页显示骰子 } document.write(rollDice());
问题是您正在比较两个数组
player1
player2
。您应该比较随机值
randPlayer1
randPlayer2

var highestdicerll=0;
var赢家;
函数rollDice(){
让player1=['',
'',
'',
'',
'',
''];
让player2=['',
'',
'',
'',
'',
''];
var randPlayer1=Math.floor(Math.random()*player1.length);
var randPlayer2=Math.floor(Math.random()*player2.length);
变量diceRolls=player1[randPlayer1]+“”+player2[randPlayer2];
如果(随机播放者1>随机播放者2){
最高掷骰子=玩家1;
获胜者=“玩家1”;
}否则如果(randPlayer2>randPlayer1){
最高掷骰子=玩家2;
获胜者=“玩家2”;
}否则{
winner=“比赛是平局”;
}
记录。填写(“获胜者为“+winner+”
); return diceRolls;//返回到第页显示骰子 }
document.write(rollDice())
player1>player2
毫无意义,因为这是两个图像数组。将if-else部分中的
player1
player2
替换为
randPlayer1
randPlayer2
在函数中声明变量。非常感谢。