jQuery在随机时间生成随机数
jQuery generate random number at a random time
我正在尝试制作一个插件。在这个插件中,我有两个变量;rateMin和rateMax。我想在这两个数字之间生成一个随机数,并将其用作setInterval时间。然后,一旦这个数字被使用,再生成另一个随机数并使用它。
下面是一个简单的例子:
var defaults = {
rateMin: 500,
rateMax: 2000
}
var options = $.extend(defaults, options);
return this.each(function(defaults){
var rate = Math.floor(Math.random() * (options.rateMax - options.rateMin + 1)) + options.rateMin; // MAKE A RANDOM NUMBER BETWEEN MAX AND MIN
setInterval(function(){
var rate = Math.floor(Math.random() * (options.rateMax - options.rateMin + 1)) + options.rateMin
//DO SOMETHING
}, rate);
我希望通过这样做,费率将覆盖自己与一个新的数字,并在下次setInterval被调用时使用。但是它仍然只使用setInterval之前的第一个数字。
我想我不知道如何在它的函数之外使用变量。
有什么建议吗?
如果您不希望每次延迟相同,请使用setTimeout
而不是setInterval
。此外,如果您希望它覆盖外部作用域中的变量,则不要在回调中使用var rate
。也就是说,我只是将这段逻辑封装在一个函数中,然后忘记它。
function getNextRate() {
return Math.floor(Math.random() * (options.rateMax - options.rateMin + 1)) + options.rateMin;
}
setTimeout(function foo(){
//DO SOMETHING
setTimeout(foo, getNextRate());
}, getNextRate());
相关文章:
- Java脚本时间添加
- Json数据包含日期和时间格式
- 如何根据时间运行不同的脚本
- 用每小时的差值填充数组/列表-从下拉列表中给定两个时间值
- 在wordpress一定时间后更改自定义字段
- 如何在javascript中获得与特定数字相等的随机数
- 更改angularjs中的日期-时间格式
- 将当前时间添加到我的页面上的特定部分
- 门户网站:当地时间有多有用
- 显示时间的脚本
- 如何在窗体打开时从javascript倒计时计时器值中节省时间
- 通过JSON&比较时间
- Javascript时间轨迹
- 将日期时间作为 JSON 发送将无法在我的视图中正确显示
- 将日期时间从json转换为可读格式
- 高库存时期时间与时区不匹配
- Javascript动态变量(添加了随机数)
- 使用自定义时间设定的随机数
- jQuery在随机时间生成随机数
- 随机数生成器基于当前时间和出生日期