【发布时间】:2017-09-08 22:46:47
【问题描述】:
我正在为一个项目开发一个刽子手类型的游戏,并且在将错误猜测并将它们放入“错误字母”银行时遇到很多麻烦,不允许再次猜测它们。
var alphabet = "abcdefghijklmnopqrstuvwxyz".split("");
var guess; //user guess
var letters = []; //correctly guessed letters
var wrongLetters = []; //incorrectly guessed letters
var counter = 0; //counts correct letters
var lives; //counts users lives
var wordList = ["cat", "dog", "wolf", "laser", "carrol"]; //FILL LIST LATER!!
//randomly chooses a word from wordList
var word = wordList[Math.floor(Math.random() * wordList.length)];
//choosen word is replaced with
function start() {
for (i = 0; i < word.length; i++) {
letters[i] = "__";
}
document.getElementById("answer").innerHTML = letters.join(" ");
console.log(word);
}
function checkLetter() {
document.onkeyup = function(event) {
guess = event.key.toLowerCase();
for (i = 0; i < word.length; i++) {
if (guess === word[i]) {
letters[i] = guess;
document.getElementById("answer").innerHTML = letters.join(" ");
}
}
}
}
start();
checkLetter();
<h1>Hangman!</h1>
<p>
<font size="+3"><span id="answer"></span></font>
</p>
<p id="counter"></p>
<p id="wrongGuesses"></p>
这是我目前所拥有的。它基本上从数组中选择一个随机单词并在字母的位置显示下划线。如果您猜对了一个字母,下划线将被替换。正如我之前所说,我现在需要它来跟踪我的错误猜测。我知道这很模糊,但任何帮助将不胜感激!
【问题讨论】:
-
如果您有
if (quess === word[i]) { }块,请按回车键退出该功能,因为您现在有正确答案。现在在for loop的末尾,如果您发现有一个不正确的字母,您现在可以将其添加到您的列表中。
标签: javascript arrays