如何通过setInterval Math.floor Math.random输出数字数组

时间:2018-11-30 23:43:27

标签: arrays math random setinterval

我有多个HTML元素%>% pull(united),其类名称为:<h2> and </b>

函数randomgen向每个元素输出1到100之间的一个随机数:

generateRandomNumber

是否可以在数组中输出多个function generateRandomNumber(min_value, max_value) { var random_number = Math.random() * (100 - 1) + 1; return Math.floor(random_number); } document.getElementsByClassName("randomgen")[0].innerHTML = generateRandomNumber(); ,而不是为类generateRandomNumber();标识每个[x]?

randomgen

1 个答案:

答案 0 :(得分:1)

我不确定我了解您在哪里找到问题。 getElementsByClassName返回一个HTMLCollection,您当然可以以通用的方式对其进行迭代。这样的代码应该可以工作(我使用一次性setTimeout而不是setInterval来避免浪费查看此答案的人的CPU)

function generateRandomNumber(min_value, max_value) {

    var random_number = Math.random() * (100 - 1) + 1;
    return Math.floor(random_number);
}


setTimeout(function() {
   var elems = document.getElementsByClassName("randomgen");
   for(var el of elems) {
      el.innerHTML = generateRandomNumber();
   }

}, 2000);
<h2 class="randomgen">
#1
</h2>
<h2 class="randomgen">
#2
</h2>
<h2 class="randomgen">
#3
</h2>