как управлять генератором чисел - PullRequest
3 голосов
/ 18 июня 2020

Я хочу создать генератор чисел, но хочу лучше управлять им, поэтому я хочу сначала сгенерировать число 30, и каждое следующее число должно быть в диапазоне от 1 до 1000. Я сделал это, но последняя часть не работает, это каждый раз показывать 30. Можешь мне помочь? Спасибо! (Код готов к редактированию, так что все в порядке, мне просто нужен совет, как отредактировать код, чтобы отображать секунду и каждое следующее число в диапазоне от 1 до 1000! СПАСИБО!

var button = document.querySelector("button");
var number = document.querySelector("#number");
const nRuns = 12;
const timeout = 100;
let iterator = 0;

button.addEventListener( "click", textC);

function textC(){
    number.textContent = `${Math.floor(Math.random() * 1000) + 1}\n`;
    iterator += 1;
    if (iterator < nRuns) {
      setTimeout(textC, timeout)
    } else{
      iterator = 0;
      number.textContent = 30;
    }
}
<p id="number"></p>
<button>Generate</button>

Ответы [ 2 ]

2 голосов
/ 18 июня 2020

это должно работать.

var button = document.querySelector("button");
var number = document.querySelector("#number");
const nRuns = 12;
const timeout = 100;
let iterator = 0;
let random = false;

button.addEventListener( "click", textC);

function textC(){
    let n = Math.floor(Math.random() * 1000) + 1;
    number.textContent = `${n}\n`;
    iterator += 1;
    if (iterator < nRuns) {
      setTimeout(textC, timeout)
    } else{
      iterator = 0;
      number.textContent = random ? n : 30;
      random = true;
    }
}
<p id="number"></p>
<button>Generate</button>
1 голос
/ 18 июня 2020

Вам необходимо переключить начальное и конечное значения.

var button = document.querySelector("button");
var number = document.querySelector("#number");
const nRuns = 12;
const timeout = 100;
let iterator = 0;

button.addEventListener( "click", textC);

function textC(){
    number.textContent = iterator === 0
        ? 30
        : Math.floor(Math.random() * 1000) + 1;

    iterator++;
    if (iterator < nRuns) {
        setTimeout(textC, timeout);
    } else {
        iterator = 0;
    }
}
<p id="number"></p>
<button>Generate</button>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...