我正在创建一个Hangman的JavaScript游戏(JavaScript只有jQuery无论如何)这是我的代码用'_'替换所有未编辑的字母
function partialWords(random_word, letters) {
var returnLetter = "";
for (i = 0; i < random_word.length; i++) {
if (letters.indexOf(random_word[i]) !== -1) {
returnLetter = returnLetter + random_word[i];
} else {
returnLetter = returnLetter + ' _ ';
}
}
return returnLetter;
}
我只是想知道是否有人能够帮助我弄清楚如何检查是否还剩下'_',提前谢谢!
答案 0 :(得分:2)
要查明给定字符串中是否有任何 _
:
if (stringVariableToCheck.indexOf('_') !== -1) {
// there's at least one '_' in the string
}
要找出该字符串中有多少 _
:
var numOfUnderScores = stringVariableToCheck.replace(/[^_]/g,'').length;
有点人为的JS Fiddle demo(该演示确实需要最新的浏览器)。
答案 1 :(得分:1)
字符串对象也有indexOf方法
if(returnLetter.indexOf('_') == -1) {
}
您还可以在单独的数组中保留错过的字母
function partialWords(random_word, letters) {
var returnLetter = "";
var missedLetters = [];
for (i = 0; i < random_word.length; i++) {
if (letters.indexOf(random_word[i]) !== -1) {
returnLetter = returnLetter + random_word[i];
} else {
returnLetter = returnLetter + ' _ ';
missedLetters.push(random_word[i]);
}
}
if(missedLetters.length > 0) {
// do something
// send missed letters
return missedLetters.join(', ');
}
return returnLetter;
}