将间隔时间改为随机?

时间:2015-06-22 08:41:41

标签: javascript

我正在寻找一种方法来改变我的javascript数字计数器的工作方式。现在它只是每秒计数,但我希望它能在1秒到15秒之间随机计算。

{{1}}

有人可以帮助我将计数时间更改为随机数吗?

3 个答案:

答案 0 :(得分:1)

假设间隔在1到15秒之间,并在每个间隔之后改变。 public string GetParagraphs(string html, int startParagraph, int numberOfParagraphs) { // ... var result = paragraphs.Skip(startParagraph) .Take(numberOfParagraphs) .Select(paragraph => paragraph + paragraphSeparator); } 不合适。 setIntervsal()这是一个不错的选择,因为等待的单一间隔。每个下一个间隔都会有一个新的等待时间,必须再次调用。随机等待时间通过setTimeout()来实现,该函数返回0到1之间的浮点数。使用因子并强制为整数并填充1000毫秒,我们得到所需的间隔。

(对于以前的解决方案的一句话:首先,我认为只有一个固定的随机间隔才适合,但问题是,请求了什么样的间隔。)

Math.random()

答案 1 :(得分:1)

尝试

(Math.floor(Math.random() * 15) + 1)*1000 而不是固定的1000毫秒

Generate random number between two numbers in JavaScript

答案 2 :(得分:0)

使用随机时间参数在setTimeout中使用setInterval代替startCount(),并在count函数的末尾调用它。

function startCount()
{   
    timer = setTimeout (count, Math.floor(Math.random() * 14000) + 1000);  
}


function count()
{
    var el = document.getElementById('counter');
    var currentNumber = parseFloat(removeCommas(el.innerHTML));
    el.innerHTML = addCommas(currentNumber+1);
    startCount()
}