Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/444.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/arrays/13.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
从数组中生成一个随机字,然后将其打印到javascript函数中的控制台日志中_Javascript_Arrays_Function_Console - Fatal编程技术网

从数组中生成一个随机字,然后将其打印到javascript函数中的控制台日志中

从数组中生成一个随机字,然后将其打印到javascript函数中的控制台日志中,javascript,arrays,function,console,Javascript,Arrays,Function,Console,我正在用javascript创建hangman,我已经(我想)成功地从一个函数的数组中生成了一个随机单词,为了检查它是否有效,我正在尝试将生成的单词打印到控制台中,但它似乎不起作用。这是我的函数代码 var word = function() //Random word is genereated from an array for the user to guess { GameWordArray = new Array(7); GameWordArray[0] = "moni

我正在用javascript创建hangman,我已经(我想)成功地从一个函数的数组中生成了一个随机单词,为了检查它是否有效,我正在尝试将生成的单词打印到控制台中,但它似乎不起作用。这是我的函数代码

    var word = function() //Random word is genereated from an array for the user to guess
{
  GameWordArray = new Array(7);
  GameWordArray[0] = "monitor";
  GameWordArray[1] = "program";
  GameWordArray[2] = "application";
  GameWordArray[3] = "keyboard";
  GameWordArray[4] = "javascript";
  GameWordArray[5] = "gaming";
  GameWordArray[6] = "network";
  randno = Math.floor(Math.random() * GameWordArray.length);
  document.write(GameWordArray[randno]);
  console.log(word);
}
提前感谢:)

试着这样使用它:

var getRandomWord = (function () {
  var gameWordArray = [];
  gameWordArray.push("monitor");
  gameWordArray.push("program");
  gameWordArray.push("application");
  gameWordArray.push("keyboard");
  gameWordArray.push("javascript");
  gameWordArray.push("gaming");
  gameWordArray.push("network");
  return function () {
    var randNum, finalWord;
    randNum = Math.floor(Math.random() * gameWordArray.length);
    finalWord = gameWordArray[randNum];
    return finalWord;
  };
})();
演示:

与其声明具有预定义长度的数组,不如声明一个空数组并在其末尾添加值(使用
.push()
)。您还可以像这样声明数组:

var gameWordArray = ["monitor", "program", ...];
您试图打印
word
(我将其重命名为
getRandomWord
),这是一个函数。您可能打算使用
console.log(gameWordArray[randno])
,这应该可以使用。

下面是一个关于

要使其与您当前的代码直接匹配:

var getRandomWord = function () {
    return words[Math.floor(Math.random() * words.length)];
};

谢谢,但是当我把它放在我的原始代码的地方并尝试运行它时,它在代码的其他地方给了我一个语法错误,在这行代码上给了我这个错误;检测到错误:第86行文档处或周围的语法错误(#86)错误。getElementById(“按钮”)。onclick=guessButtonClicked@OwenBrain难道你不认为提供实际错误或语法错误所指的位置会有帮助吗?是的,我试过了,很抱歉,如果它没有正确通过,我是这个网站的新手,谢谢以这种方式创建随机单词有点痛苦,因为每次调用函数时都会创建一个新的单词数组。
var getRandomWord = function () {
    return words[Math.floor(Math.random() * words.length)];
};