首页 > 编程笔记 > JavaScript笔记
JS生成随机数(random()函数)
在 Math 对象的常用方法中 random()、round()、ceil() 等几个方法最常用,特别是 random()。下面将主要是通过演示使用这几个函数产生不同的随机数来介绍 Math 对象的使用。
1) 获取 0~1.0 之间的随机数:
2) 随机获取 0 和 1:
3) 随机获取 0~10 之间的一个整数:
4) 随机获取 5~10 之间的一个整数:
5) 随机获取 10~20 之间的一个整数:
6) 随机获取 20~100 之间的一个整数:
7) 随机获取 x~y 之间的一个整数,其中 x 和 y 都是整数。
通过分析前面获取不同范围之间的随机数的代码发现,random() 乘以某个数 v1 再加上另一个数 v2 后再进行四舍五入,可获得 v2~v1+v2 之间的随机整数,由此可总结获取任意两个数 x~y 之间的随机整数的一般公式如下:
例如假设 x=26,y=37,求两个数之间的随机整数的代码如下:
8) 随机获取 0~x 之间的一个整数,其中 x 是一个整数:
9) 1~x 之间的一个整数,其中 x 是一个整数:
1) 获取 0~1.0 之间的随机数:
Math.random();
2) 随机获取 0 和 1:
Math.round(Math.random());
使用 round() 对 random() 函数所返回的 0~1.0 之间的数进行四舍五入后,最终结果或者是 0 或者是 1。3) 随机获取 0~10 之间的一个整数:
Math.round(Math.random()*10);
首先使用 Math.random()*10 可得到 0~10.0 之间的一个随机数,然后再使用 Math.round() 对 0~10.0 之间的随机数进行四舍五入,最终就可得到 0~10 之间的一个随机整数。4) 随机获取 5~10 之间的一个整数:
Math.round(Math.random()*5+5);
首先使用 Math.random()*5+5 可得到 5.0~10.0 之间的一个随机数,然后再使用 Math.round() 对 5.0~10.0 之间的随机数进行四舍五入,最终就可得到 5~10 之间的一个随机整数。5) 随机获取 10~20 之间的一个整数:
Math.round(Math.random()*10+10);
首先使用 Math.random()*10+10 可得到 10.0~20.0 之间的一个随机数,然后再使用 Math.round() 对 10.0~20.0 之间的随机数进行四舍五入,最终就可得到 10~20 之间的一个随机整数。6) 随机获取 20~100 之间的一个整数:
Math.round(Math.random()*80+20));
首先使用 Math.random()*80+20 可得到 20.0~100.0 之间的一个随机数,然后再使用 Math.round() 对 20.0~100.0 之间的随机数进行四舍五入,最终就可得到 20~100 之间的一个随机整数。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.round(Math.random()*x)
首先使用 Math.random()*x 可得到 0~x 之间的一个随机数,然后再使用 Math.round() 对 0~x 之间的随机数进行四舍五入,最终就可得到 0~x 之间的一个随机整数。9) 1~x 之间的一个整数,其中 x 是一个整数:
Math.ceil(Math.random()*x)
首先使用 Math.random()*x 可得到 0~x 之间的一个随机数,然后再使用 Math.ceil() 向上取整得到 1~x 之间的随机数进行四舍五入,最终就可得到 1~x 之间的一个随机整数。所有教程
- C语言入门
- C语言编译器
- C语言项目案例
- 数据结构
- C++
- STL
- C++11
- socket
- GCC
- GDB
- Makefile
- OpenCV
- Qt教程
- Unity 3D
- UE4
- 游戏引擎
- Python
- Python并发编程
- TensorFlow
- Django
- NumPy
- Linux
- Shell
- Java教程
- 设计模式
- Java Swing
- Servlet
- JSP教程
- Struts2
- Maven
- Spring
- Spring MVC
- Spring Boot
- Spring Cloud
- Hibernate
- Mybatis
- MySQL教程
- MySQL函数
- NoSQL
- Redis
- MongoDB
- HBase
- Go语言
- C#
- MATLAB
- JavaScript
- Bootstrap
- HTML
- CSS教程
- PHP
- 汇编语言
- TCP/IP
- vi命令
- Android教程
- 区块链
- Docker
- 大数据
- 云计算