Я следую учебному пособию по Javascript, в котором я должен увидеть игру палача, использующую только функции, я близок к концу, но не могу понять это ... По какой-то причине моя функция не зацикливаетсяв частности, мой быстрый массаж не может быть получен по моей первой букве / вводу, после этого я не могу больше получать быстрый массаж ... потому что это должно, это цикл для реализованного ... Я знаю, что это другая основная проблема,но я просто не могу пройти через это. Если бы кто-то просто взглянул на это, было бы неплохо ...
Я попытался использовать "console.log" и поместить его внутри оператора "if" и внутри "for", чтобы увидеть,цикл работает, цикл работает, но мое приглашение не зацикливается / не повторяется ... И я не знаю, почему ...: (*
var updateGameState = function (guess, word, answerArray) {
// Update answerArray and return a number showing how many
// times the guess appears in the word so remainingLetters
// can be updated
for (var j = 0; j < word.length; j++) {
if (word[j] === guess && answerArray[j] !== word[j]) {
answerArray[j] = guess;
remainingLetters--;
};
}; getGuess();
console.log(answerArray);
};
var remainingLetters = word.length;
var correctGuesses = updateGameState(guess, word, answerArray);
Сейчас я хочу, чтобы мое сообщение-подсказка сохраняловыскакивает так долго, что я могу вводить свои письма / догадки ...
---- внизу находится файл .js и html ....----
var pickWord = function(random) {
// Return a random word
return random[Math.floor(Math.random() * random.length)];
};
var word = pickWord(["fakultet", "zirafa", "trava", "labelo"]);
console.log(word);
var setupAnswerArray = function(word) {
// Return the answer array
var answerArray = [];
for (i = 0; i < word.length; i++) {
answerArray[i] = "_";
}
console.log(answerArray);
return answerArray;
};
var answerArray = setupAnswerArray(word);
var showPlayerProgress = function(answerArray) {
// Use alert to show the player their progress
return alert(answerArray.join(" "));
};
showPlayerProgress(answerArray);
var getGuess = function() {
// Use prompt to get a guess
return (prompt("Guess a letter, or click Cancel to stop playing " + answerArray)).toLowerCase();
};
var guess = getGuess();
console.log(guess);
// HERE IS THE PROBLEM
///*******************************************************
var updateGameState = function(guess, word, answerArray) {
// Update answerArray and return a number showing how many
// times the guess appears in the word so remainingLetters
// can be updated
for (var j = 0; j < word.length; j++) {
if (word[j] === guess && answerArray[j] !== word[j]) {
answerArray[j] = guess;
remainingLetters--;
};
};
getGuess();
console.log(answerArray);
};
var remainingLetters = word.length;
var correctGuesses = updateGameState(guess, word, answerArray);
//*********************************************************
/* - code from the book
var showAnswerAndCongratulatePlayer = function (answerArray) {
// Use alert to show the answer and congratulate the player
};
var word = pickWord();
var answerArray = setupAnswerArray(word);
var remainingLetters = word.length;
while (remainingLetters > 0) {
showPlayerProgress(answerArray);
var guess = getGuess();
if (guess === null) {
break;
} else if (guess.length !== 1) {
alert("Please enter a single letter.");
} else {
var correctGuesses = updateGameState(guess, word, answerArray);
remainingLetters -= correctGuesses;
}
}
showAnswerAndCongratulatePlayer(answerArray);
*/
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Section 2: JavaScript Language Basics</title>
</head>
<body>
<h1>Section 2: JavaScript Language Basics</h1>
</body>
<script src="script.js"></script>
</html>