2013-10-06 28 views
0

我創建劊子手的一個JavaScript遊戲(JavaScript的只有NO jQuery的任何)這是我的代碼替換所有unguessed字母與「_」如何檢查,如果沒有特殊人物離開

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

什麼變量表示一個在其中'_'將出現一個indexOf方法? –

回答

1

有一個String對象太

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; 
} 
+0

謝謝!我喜歡將它存儲在一個陣列中的想法,爲人們歡呼 –

2

要找出是否有任何_一個給定的字符串:

if (stringVariableToCheck.indexOf('_') !== -1) { 
    // there's at least one '_' in the string 
} 

要找出多少_存在這樣的字符串:

var numOfUnderScores = stringVariableToCheck.replace(/[^_]/g,'').length; 

一個有點做作JS Fiddle demo(儘管演示確實需要最新的瀏覽器)。

相關問題