首页 > 解决方案 > 数组重新循环以删除先前生成的一组数组数据

问题描述

当我再次尝试重新运行该函数时,我的文件在第一轮循环中运行良好。当我尝试使用该值进行匹配时,它会显示上一个循环的前一个值,然后它会显示正确的值。如果我一次又一次地运行该函数,它会一直保持先前生成的随机值的值。

for (var i=0; i<9; i++)
  {
    var ranD = Math.floor(Math.random()*33);

    if (mathStar.indexOf(ranD)== -1) {
     mathStar.push(ranD);
     item[i].innerHTML = mathStar[i];
      }
      else {
        i--;
      }
      itemVal[i].value = mathStar[i];

  }

标签: javascriptarraysloops

解决方案


在循环内替换 usingconstletfor以避免创建全局变量,并且可能在循环中也使用的代码中产生意外结果。varfor--ii++foor


推荐阅读