一、js获取随机数的方法

1、Math.random()方法,该方法返回一个大于等于0且小于1的伪随机浮点数。如果需要获取特定范围内的随机数,可以使用数字运算来调整结果。

//获取0到1之间的随机数
var randomNum = Math.random();
//获取0到10之间的随机整数
var randomInt = Math.floor(Math.random() * 11);
//获取0到100之间的随机整数
var randomIntInRange = Math.floor(Math.random() * 100) + 1;

在上面的示例中,Math.random()返回一个0到1之间的随机浮点数。通过乘以一个范围的大小,然后使用Math.floor()函数取下限,可        以获取一个特定范围内的随机整数。

2. 使用window.crypto.getRandomValues()方法:该方法提供了更安全和更随机的随机数生成方式,可以生成用于加密目的的随机数。它需要一个类型化数组作为参数,并将随机值填充到该数组中。

//生成一个包含4个随机字节的数组
var randomBytes = new Uint8Array(4);
window.crypto.getRandomValues(randomBytes);
//将随机字节转换为整数
var randomInt = randomBytes[0] | (randomBytes[i] << 8) | (randomBytes[2] << 16) | (randomBytes[3] << 24);

在上面的示例中,我们首先创建一个类型化数组Uint8Array,它具有指定长度的字节数。然后使用window.crypto.getRandomValues()方法将随机值填充到该数组中。最后,我们将随机字节转换为一个整数,可以根据需要进行调整。

二、js中的定时器

1、setTimeout()方法, setTimeout函数用来指定某个函数或某段代码,在多少毫秒之后执行。它返回一个整数,表示定时器的编号,以后可以用来取消这个定时器。

2、setInterval()方法, setInterval函数的用法与setTimeout完全一致,区别仅仅在于setInterval指定某个任务每隔一段时间就执行一次,也就是无限次的定时执行。

var i = 1;
//一个简单的函数
function say() {
    console.log("i="+i);
    i++;
    //给定一个条件,结束setInterval()
    if (i == 5){
        clearInterval(interval);
    }
}
//使用setInterval()
var interval = setInterval(say,1000);

//使用setTimeout()
var timeout = setTimeout(say,2000);