我正在用JavaScript制作一个刽子手游戏,我很困惑

时间:2015-07-20 18:38:46

标签: javascript

我真的很新编码,并且很难理解。有人可以向我解释一下吗?我的朋友正在帮助我,但我想理解为什么事情就是这样,特别是变量索引和返回部分。

    var guessInt = 6;
    var guessStr = "You have" + guessInt + "tries left";

    function getWord() {
        var words = new Array("JAVASCRIPT", "COMPUTER", "PROGRAMMING", "OPERATOR",
            "OPERAND", "CONDITIONAL", "REPETITION", "FUNCTION", "ARRAY", "ERROR",
            "LOOP", "BOOLEAN", "STRING", "NUMBER", "DEBUG", "SWITCH", "CASE",
            "HTML", "SCRIPT", "BODY", "DOCTYPE", "RETURN", "OBJECT", "DATE", "MATH",
            "TERNARY", "WHILE", "TABLE", "INPUT", "VALUE", "CLICK", "CLASS",
            "STYLE", "BUTTON", "DOCUMENT", "TITLE", "HEAD");
        var index = Math.floor(Math.random() * words.length);
        return words[index];
    }

1 个答案:

答案 0 :(得分:2)

Math.floor()向下舍入一个数字。 Math.random()生成0到< 1之间的随机浮点数(始终低于1)。 words.length是数组的长度。

这意味着:

var words = new Array("a", "b", "c"); // length = 3
// get a random float between 0 and < 3,
// rounded down, in other words a random int between 0 and 2
var index = Math.floor(Math.random() * words.length);
// returns the word at that specific index in the array
return words[index];

因此,每次拨打getWord()时,您都会从words数组中收到1个随机选择的字词。