Javascript 当用户失败时如何重置游戏
我的学校课程已经开始一个月了,所以我对这一点很陌生。我正在做一个游戏,电脑随机得到一个字母,用户有10次猜测才能正确回答。在用户剩下0次猜测后,将显示一条confirm()消息。我想把猜测重置为10,删除猜测的字母,同时统计赢和输。有没有办法在不刷新页面的情况下执行此操作Javascript 当用户失败时如何重置游戏,javascript,Javascript,我的学校课程已经开始一个月了,所以我对这一点很陌生。我正在做一个游戏,电脑随机得到一个字母,用户有10次猜测才能正确回答。在用户剩下0次猜测后,将显示一条confirm()消息。我想把猜测重置为10,删除猜测的字母,同时统计赢和输。有没有办法在不刷新页面的情况下执行此操作 var letters = ["a", "b", "c", "d", "e", "f", "g", "h", "i", "j", "k", "l", "m", "n", "o", "p", "q", "r", "s", "t
var letters = ["a", "b", "c", "d", "e", "f", "g", "h", "i", "j", "k",
"l", "m", "n", "o", "p", "q", "r", "s", "t", "u", "v", "w", "x", "y",
"z"];
var wins = 0;
var losses = 0;
var guessesLeft = 10;
var guessesLetter = "";
var letter = []
var winsText = document.getElementById("wins-text");
var lossesText = document.getElementById("losses-text");
var guessesLeftText = document.getElementById("guesses-left-text");
var guessesLetterText = document.getElementById("guesses-letter-text");
document.onkeyup = function(event) {
var userGuess = event.key;
letter.push(userGuess)
var computerGuess = letters[Math.floor(Math.random() * letters.length)];
if (userGuess === computerGuess) {
wins++;
}else {
guessesLeft--;
}
if (guessesLeft === 0) {
losses++;
confirm("GAME OVER, SUCKA! Try again?")
}
使用逻辑名称创建一个方法(例如reset_game())。在这个方法中,我们可以通过说
letter=[]
来清除数组字母,并通过说guessleft=10
来重置剩余的猜测。就像ps2goat说的,这应该在确认后再做尝试
function game() {
var letters = [
"a", "b", "c", "d", "e", "f", "g", "h", "i", "j", "k",
"l", "m", "n", "o", "p", "q", "r", "s", "t", "u", "v", "w", "x", "y",
"z"
];
var wins = 0;
var losses = 0;
var guessesLeft = 10;
var guessesLetter = "";
var letter = [];
var winsText = document.getElementById("wins-text");
var lossesText = document.getElementById("losses-text");
var guessesLeftText = document.getElementById("guesses-left-text");
var guessesLetterText = document.getElementById("guesses-letter-text");
document.onkeyup = function(event) {
var userGuess = event.key;
letter.push(userGuess);
var computerGuess = letters[Math.floor(Math.random() * letters.length)];
if (userGuess === computerGuess) {
wins++;
} else {
guessesLeft--;
}
if (guessesLeft === 0) {
losses++;
confirm("GAME OVER, SUCKA! Try again?");
}
};
function start()
{
// Set all elements to default values here
}
}
然后,您可以根据需要创建游戏实例
var game1 = new game();
game1.start();
// on start game button
game1 = new game();
只是别忘了在任何用户界面中重置值。创建一个方法来执行所需的重置,然后在调用
确认后调用该方法。
我尝试过,但仍然不起作用。谢谢你的留言,不过…我很感激!var computerGuess=letters[Math.floor(Math.random()*letters.length)];if(userGuess==computerGuess){wins++;}else{guessleft--;}if(guessleft===0){loss++;确认(“游戏结束了,混蛋!再试一次?”)}函数newGame(){guessleft=10;字母=[];}
function guess(letter) {
if (userGuess === computerGuess) {
endGame(true)
}else {
guessesLeft--;
}
if (guessesLeft === 0) {
endGame(false)
}
}
function endGame(winner) {
guessesLeft = 10;
guessesLetter = "";
letter = []
if (winner) {
wins++
confirm("Congrats! Try again?")
} else {
losses++
confirm("GAME OVER, SUCKA! Try again?")
}
}