在 if/else 内循环
While loop inside if/else
while(playerTwoHealth > 0 && playerOneHealth > 0){
changeScreen("Player1's Turn", "<button id='player1Attack'>Attack</button><button id='player1Defend'>Defend</button>");
$("#player1Attack").click(function(){
var successfulAttack = alert("Did you get this question right?");
if(successfulAttack === true){
playerTwoHealth = playerTwoHealth - 1;
if(playerTwoHealth === 0){
break;
};
}else{
};
});
};
我正在制作一个教育数学游戏,在这部分代码中,我试图测试对所提问题的反应。函数 changeScreen
将屏幕的标题和段落部分更改为指定的 HTML。在线号7-9,if/else 语句旨在测试玩家的生命值是否已达到 0,如果达到,则中断第 1 行声明的 while 循环。但是,break 语句会抛出 illegal break statement 错误。请post任何关于如何解决的建议。
您的 break 语句在绑定到点击事件的函数中,因此它不在 while 循环中。永远不要在 while 循环中绑定事件,因为这会在每次循环时尝试绑定事件。
此外,您可能希望将 alert
替换为 prompt
将点击事件移出循环。事实上,你并不真的需要休息,因为当健康为 0
时 while 循环条件将无效
while(playerTwoHealth > 0 && playerOneHealth > 0){
changeScreen("Player1's Turn", "<button id='player1Attack'>Attack</button><button id='player1Defend'>Defend</button>");
};
$("#player1Attack").click(function(){
var successfulAttack = alert("Did you get this question right?");
if(successfulAttack === true){
playerTwoHealth = playerTwoHealth - 1;
if(playerTwoHealth === 0){
// Do stuff
};
} else {
};
});
while(playerTwoHealth > 0 && playerOneHealth > 0){
changeScreen("Player1's Turn", "<button id='player1Attack'>Attack</button><button id='player1Defend'>Defend</button>");
$("#player1Attack").click(function(){
var successfulAttack = alert("Did you get this question right?");
if(successfulAttack === true){
playerTwoHealth = playerTwoHealth - 1;
if(playerTwoHealth === 0){
break;
};
}else{
};
});
};
我正在制作一个教育数学游戏,在这部分代码中,我试图测试对所提问题的反应。函数 changeScreen
将屏幕的标题和段落部分更改为指定的 HTML。在线号7-9,if/else 语句旨在测试玩家的生命值是否已达到 0,如果达到,则中断第 1 行声明的 while 循环。但是,break 语句会抛出 illegal break statement 错误。请post任何关于如何解决的建议。
您的 break 语句在绑定到点击事件的函数中,因此它不在 while 循环中。永远不要在 while 循环中绑定事件,因为这会在每次循环时尝试绑定事件。
此外,您可能希望将 alert
替换为 prompt
将点击事件移出循环。事实上,你并不真的需要休息,因为当健康为 0
时 while 循环条件将无效while(playerTwoHealth > 0 && playerOneHealth > 0){
changeScreen("Player1's Turn", "<button id='player1Attack'>Attack</button><button id='player1Defend'>Defend</button>");
};
$("#player1Attack").click(function(){
var successfulAttack = alert("Did you get this question right?");
if(successfulAttack === true){
playerTwoHealth = playerTwoHealth - 1;
if(playerTwoHealth === 0){
// Do stuff
};
} else {
};
});