プログラミングを独学しています。数日前にJSでハングマンゲームを始めました。ユーザーがクリックしたリストの値が、推測しようとしている単語の値の 1 つであるかどうかを判断するのに苦労しています。「グローバル変数とローカル変数」の問題だと思いますが、すべてを1つの関数に含めずに回避する方法がわかりません。私のコードは以下のとおりです。初心者の間違いをお詫びします。ちょっとしたアドバイスをくれる人には本当に感謝しています。ありがとう!
var wordBank = ['apple', 'orange', 'pear', 'monkey', 'radish'];
var word;
// start game on click and choose random word from wordBank
function startGame() {
$("#hangman").hide('slow');
$("#start").click(function(){
var word = wordBank[Math.floor(Math.random()*wordBank.length)];
var wordLength = word.length;
var underscores = "";
for(i=0; i<wordLength; i++) {
underscores = underscores + "_ "
}
// now variable underscores has the underscores.
$("#word").html(underscores);
});
// get list value for the letter chosen
$(".alpha li").click(function() {
var index = $(this).index();
var text = $(this).text();
// see if character clicked matches index of a letter in the word
if(word.indexOf(text) >= 0) {
alert("Correct Letter!");
} else {
alert("Wrong!");
}
});
}