在单词中查找特定字母

时间:2014-02-20 13:00:35

标签: javascript

我正在做一个刽子手游戏,这是我的进步。因此,计算机选择一个随机单词,打印出与单词中有字母一样多的下划线。现在我需要检查输入字母是否与随机单词中的任何字母匹配。 到目前为止我已经尝试过了。

var wordList = new Array("duck","cat","dog","carpet","pants","computer","book");

var randomWord = wordList[Math.floor(Math.random()* wordList.length)];
var underscore = function(randomWord) {
    for (i = 0; i < randomWord.length; i++) {
        document.write("_" + " " + " ");
    }
};

underscore(randomWord);

var guessLetter= prompt("Guess a letter");
var positions = function (randomWord, guessLetter){
    for (var i = 0; i < randomWord.length ; i++) {
    }
}

现在我完全陷入困境,有什么帮助吗?

2 个答案:

答案 0 :(得分:0)

以下代码返回与单词中的字母匹配的所有位置:

function checkLetterInWord(word, letter) {
    var positions = [];
    for(var i=0; i<word.length; i++) 
        if(word.charAt(i) == letter)
            positions.push(i);
    return positions;
}

var word2guess = "hangman";
var pos = checkLetterInWord(word2guess, "a");

for(var i=0; i<word2guess.length; i++) {
    if(pos.indexOf(i) === -1)
        document.write("_");
    else
        document.write(word2guess[i]);
}

答案 1 :(得分:0)

以下建议将是您正在寻找的,它将返回一个布尔;

bool isItThere = randomWord.Contains('guessletter');

如果你想让角色的位置看到@ guy777的回答。