2016-10-07 10 views
-2

私はハングマンゲームを構築しようとしています。ロジックには助けが必要です。私は初心者のクラスですので、初心者の構文を使ってこれを試してみたいと思います。私が理解しようとしているものJavaScriptを使用したハングマンゲームのロジック

2)私の問題は、空白行を表すダッシュ( - )を表示する必要があり、ランダムに選択した単語の長さが同じである必要があります。さらに、文字が正しく推測されるたびに、正しく選択された文字でダッシュを置き換える必要があります。私が考えている解決策は、空の配列を作成して、文字列の長さであるforループのダッシュ記号を割り当ててから、一致する文字で特定のダッシュのインデックスを置き換えることですが、これが動作するかどうかはわかりません。

var randomWords = ['rock', 'paper', 'scissors']; 
var numWins = 0; 
var chosenWord = randomWords[Math.floor(Math.random() * randomWords.length)]; 
document.onkeyup = function(event) { 
    // var userGuess = String.fromCharCode(event.keyCode).toLowerCase(); 
    var dashes = ""; 
    for (var x = 0; x < chosenWord.length; x++) { 
     dashes += " - "; 
     // document.getElementById("word").innerHTML = blankLines; 
     // document.getElementById("word").innerHTML = ; 
    } 
    document.getElementById("word").innerHTML = dashes; 

ダッシュを下の行の文字で置き換えようとしています。しかし、両方のコードをコメントアウトし、コメントアウトされていないコードが動作します。私はこの1つは動作するはずfoorループ

 // for (x = 0; x < chosenWord.length; x++) 
    // { 
    //   dashes[x] = "a"; 
    //   dahes.charAt(x) = 'a'; 
    // } 
    dashes.charAt(0) = "a"; 
    document.getElementById("test2").innerHTML = dashes; 
+0

あなたはそれが動作するかどうかわからない場合、あなたはそれを試してみて、見つける必要があります;)配列内の文字列を置き換えるのあなたのアイデアは良いものだと私はあなたをお勧めしたいですそうそう。 ['join'](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/join)を読んでください。アレイ内の内容を表示したい場合は、多くの場合役立ちます。 –

+0

実際に質問されていないようです。スタックオーバーフローは、フリーコード作成サービスではありません。 [ask]を確認してください。 – zzzzBov

答えて

0

を使用して、データとそれを埋めることができるかどうか確認してください空の配列を使用してではなく、を考えています理由です。最初の場合(単語に空白がある場合)、空白が表示されます。 2番目のケースでは、単語のすべての文字をダッシュ​​に置き換えます。

var dashes = ""; 
 

 

 
for (i = 0; i < chosenWord.length; i++) { 
 
    if (chosenWord.charAt(i) == " ") { 
 
    dashes += " "; 
 
    } else { 
 
    dashes += "-"; 
 
    } 
 
}

+0

私はこのゲームを数ヶ月前にやったことがありますが、あなたが望むなら、コードを送ることができます。 –

+0

よろしいですか。しかし、私はちょうど完全に困惑し、私が行ったことがないまで、それを見ることはありません。 – henhen

関連する問題