繁体   English   中英

JS for Kids Hangman游戏

[英]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++)编写时,字母ij或什至放置在该插槽中的所有字母代表当前的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.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM