为什么赢了';难道这个简单的javascript函数不做它应该做的事情吗?

为什么赢了';难道这个简单的javascript函数不做它应该做的事情吗?,javascript,html,function,Javascript,Html,Function,我正在尝试编写一个函数,使一个随机数字符串在html元素中一个接一个地出现。请参见下面的功能: document.getElementById("button-1").onclick = function () { var numbersArray = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10]; var newNumbersArray = []; function createNewArray (array) { for (i=0;i<50

我正在尝试编写一个函数,使一个随机数字符串在html元素中一个接一个地出现。请参见下面的功能:

document.getElementById("button-1").onclick = function () {
  var numbersArray = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10];
  var newNumbersArray = [];

  function createNewArray (array) {
    for (i=0;i<50;i++) {
      array.push(numbersArray[Math.floor(Math.random()*11)]);
    }
    return array;
  }

  for (j = 0; j < newNumbersArray.length; j++) {
    document.getElementById("number-display").innerHTML = newNumbersArray[j];
  }
}
document.getElementById(“按钮-1”).onclick=function(){
var numbersArray=[0,1,2,3,4,5,6,7,8,9,10];
var newNumbersArray=[];
函数createNewArray(数组){

对于(i=0;i而言,问题在于您从未调用过
createNewArray

document.getElementById(“按钮-1”).onclick=function(){
var numbersArray=[0,1,2,3,4,5,6,7,8,9,10];
var newNumbersArray;
函数createNewArray(数组){

对于(i=0;i而言,问题在于您从未调用过
createNewArray

document.getElementById(“按钮-1”).onclick=function(){
var numbersArray=[0,1,2,3,4,5,6,7,8,9,10];
var newNumbersArray;
函数createNewArray(数组){

对于(i=0;i您没有调用
createNewArray()
,可能您缺少:

newNumbersArray = createNewArray(numbersArray)
此外,这看起来很奇怪,因为您正在多次覆盖该值:

for (j = 0; j < newNumbersArray.length; j++) {
  document.getElementById("number-display").innerHTML = newNumbersArray[j];
}

您没有调用
createNewArray()
,可能您缺少:

newNumbersArray = createNewArray(numbersArray)
此外,这看起来很奇怪,因为您正在多次覆盖该值:

for (j = 0; j < newNumbersArray.length; j++) {
  document.getElementById("number-display").innerHTML = newNumbersArray[j];
}

我在代码中发现的问题是,您正在定义一个名为
createNewArray
函数,但从未使用过它

解决办法应该是:

createNewArray(newNumbersArray)
但是,我建议您执行以下操作:

document.getElementById(“按钮-1”).onclick=function(){
var newNumbersArray;
函数createNewArray(){
//而不是传递要修改的参数,
//您可以在函数中创建一个变量并返回它
var数组=[];

对于(i=0;i我在代码中发现的问题是,您正在定义一个名为
createNewArray
函数,但从未使用它

解决办法应该是:

createNewArray(newNumbersArray)
但是,我建议您执行以下操作:

document.getElementById(“按钮-1”).onclick=function(){
var newNumbersArray;
函数createNewArray(){
//而不是传递要修改的参数,
//您可以在函数中创建一个变量并返回它
var数组=[];

for(i=0;因为
newNumbersArray
而在页面上显示的iNothing为空。您有一个indexOutOfException。因为
newNumbersArray
为空,所以页面上没有显示任何内容。您有一个indexOutOfException。