1、 获取 0~1.0 之间的随机数
Math.random();
2、随机获取 0 和 1
使用 round() 对 random() 函数所返回的 0~1.0 之间的数进行四舍五入后,最终结果或者是 0 或者是 1。
Math.round(Math.random());
3、随机获取 0~10 之间的一个整数
首先使用 Math.random()*10 可得到 0~10.0 之间的一个随机数,然后再使用 Math.round() 对 0~10.0 之间的随机数进行四舍五入,最终就可得到 0~10 之间的一个随机整数
Math.round(Math.random()*10)
4、随机获取 5~10 之间的一个整数
首先使用 Math.random()*5+5 可得到 5.0~10.0 之间的一个随机数,然后再使用 Math.round() 对 5.0~10.0 之间的随机数进行四舍五入,最终就可得到 5~10 之间的一个随机整数
Math.round(Math.random()*5+5)
5、随机获取 10~20 之间的一个整数
首先使用 Math.random()*10+10 可得到 10.0~20.0 之间的一个随机数,然后再使 用 Math.round() 对 10.0~20.0 之间的随机数进行四舍五入,最终就可得到 10~20 之间的一 个随机整数
Math.round(Math.random()*10+10)
6、随机获取 20~100 之间的一个整数
首先使用 Math.random()*80+20 可得到 20.0~100.0 之间的一个随机数,然后再使用 Math.round() 对 20.0~100.0 之间的随机数进行四舍五入,最终就可得到 20~100 之间的一 个随机整数
Math.round(Math.random()*80+20))
7、随机获取 x~y 之间的一个整数,其中 x 和 y 都是整数
通过分析前面获取不同范围之间的随机数的代码发现,random() 乘以某个数 v1 再加上另一个 数 v2 后再进行四舍五入,可获得 v2~v1+v2 之间的随机整数,由此可总结获取任意两个数 x ~y 之间的随机整数的一般公式如下
Math.round(Math.random()*(y-x)+x)
例如假设 x=26,y=37,求两个数之间的随机整数的代码如下
- var x = 26,y = 37;
- alert(Math.round(Math.random()*(y-x)+x));
运行上述代码后可发现结果正是 26~37 之间的一个随机整数
8、随机获取 0~x 之间的一个整数,其中 x 是一个整数
首先使用 Math.random()*x 可得到 0~x 之间的一个随机数,然后再使用 Math.round() 对 0 ~x 之间的随机数进行四舍五入,最终就可得到 0~x 之间的一个随机整数
Math.round(Math.random()*x)
9、1~x 之间的一个整数,其中 x 是一个整数
首先使用 Math.random()*x 可得到 0~x 之间的一个随机数,然后再使用 Math.ceil() 向上取 整得到 1~x 之间的随机数进行四舍五入,最终就可得到 1~x 之间的一个随机整数
Math.ceil(Math.random()*x)