[英]JS for Kids Hangman game
我不知道是什么[i]
在answerArray[i]
確實/手段。 如果有人能夠解釋它的作用,那將意味着很多。 這段代碼來自《 JavaScript for Kids》一書,我正嘗試從任何一種編碼開始
var words = [
"money",
"pillow",
"maracas"
];
var word = words[Math.floor(Math.random() * words.length)];
var answerArray = [];
這里
for (var i = 0; i < word.length; i++) {
*answerArray[i] = "_";*
}
var remainingLetters = word.length;
while (remainingLetters > 0) {
alert(answerArray.join(" "));
var guess = prompt("Guess a letter, or click cancel to stop playing.");
if (guess === null) {
break;
} else if (guess.length !== 1) {
alert("Please enter a single letter.");
} else {
和這里
*for (var j = 0; j < word.length; j++) {
if (word[j] === guess) {
answerArray[j] = guess;*
remainingLetters--;
}
}
}
}
alert(answerArray.join(" "));
alert("Good job! The answer was " + word);
這是一個例子
https://www.w3schools.com/js/tryit.asp?filename=tryjs_loop_for_ex
當您for (i = 0; i < 5; i++)
編寫時,字母i
或j
或什至放置在該插槽中的所有字母代表當前的itteration
。 這就是所謂的for loop
,如果您剛開始使用javascript,則一定應該了解它。
簡而言之,字母代表環路的當前信號。
for (i = 0; i < 5; i++) { }
這個循環的意思是首先i = 0
。 變量“ i”為0。然后說i < 5
。 這部分是“測試”。 如果測試通過,則循環再次運行。 然后說i++
。 這是在循環運行之后發生的事情。 在此示例中, i
增加1。
{ }
內部發生的情況將發生5次,並且字母i
值將增加,表示“當前循環”。
在鏈接的演示中,您看到句子“數字為x”以從0開始的遞增順序出現。
該循環本質上意味着“當i小於5時,執行此操作”,並且每個循環i
的值都會增加,並且()
的測試將重新運行。
在陣列中,每個插槽均由一個數字表示。 MyArray[1]
引用數組中的第二項。 如果您有一個類似var myArray = ["fi", "fa", "fo"]
的數組var myArray = ["fi", "fa", "fo"]
則可以編寫console.log[2]
來打印第三項。
讓我們結合這樣的知識!
var myArray = ["fi", "fa", "fo"];
for (i = 0; i < 3; i++) {
alert(myArray[i]);
}
for循環運行3次,每次運行, i
都有一個更大的值。 這使我們可以引用數組中的每個項目。 一個更好的循環應該是for(var i = 0; i < myArray.length; i++
。這使我們將i
與數組的大小進行比較,因此數組可以是它想要的任何大小
1>答案數組最初為空array = [];
2>然后是words[Math.floor(Math.random() * words.length)]
這將從words數組返回一個隨機字符串。
3> for循環僅計算所選單詞中存在的字符數,並且在答案中插入相同的_
數
4>然后,這將僅連接所有下划線並組成單個string
(在空格中帶有)。
例如->選擇單詞“ 枕頭 ”
然后回答Array = ['_','_','_','_','_','_']
然后answerArray = "_ _ _ _ _ _"
(以空格連接)。
謝謝。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.