专业编程基础技术教程

网站首页 > 基础教程 正文

js生成随机数的方法

ccvgpt 2024-09-09 02:26:31 基础教程 7 ℃

这几天一直在研究前台DIV元素的随机定位的问题,而这里面涉及到了JS生成随机数的方法,就下功能研究了一翻,并整理了一些资料以防以后再用得到。

JS中Math对象

在JS中可以使用 Math 对像来实现随机数的生成,但是这个对像有几个方法,先了解一下

js生成随机数的方法

1、js中的 ceil() 方法

ceil():方法对数字进行四舍五入,向上取整

语法:

Math.ceil(x)

例:

<script>
 console.log(Math.ceil(0.60));
 console.log(Math.ceil(1.2));
 console.log(Math.ceil(0.1));
 console.log(Math.ceil(1.5));
 console.log(Math.ceil(-2.3));
 console.log(Math.ceil(-10));
</script>

打印结果:

1 2 1 2 -2 -10

2、js中的 floor() 方法

floor() 方法返回小于等于x的最大整数。即向下取整

语法:

Math.floor(x)

例:

<script>
 console.log(Math.floor(0.60));
 console.log(Math.floor(1.2));
 console.log(Math.floor(0.1));
 console.log(Math.floor(1.5));
 console.log(Math.floor(-2.3));
 console.log(Math.floor(-10));
</script>

打印结果:0 1 0 1 -3 -10

3、js中的 round() 方法

round():方法可以把一个数字四舍五入为最接近的整数

语法:

Math.round(x)

例:

<script>
 console.log(Math.round(0.60));
 console.log(Math.round(1.2));
 console.log(Math.round(0.1));
 console.log(Math.round(1.5));
 console.log(Math.round(-2.3));
 console.log(Math.round(-3.6));
</script>

打印结果:1 1 0 2 -2 -4

4、js中 random() 方法

random() 返回0 到1之间的随机数,包含0但不包含1

语法:

Math.random()

例:

<script>
 for (let index = 0; index < 4; index++) {
 console.log(Math.random());
 }
</script>

打印结果:

0.7818701084700324

0.04709459241600533

0.5963868333681945

0.6561094761494426

js生成随机数的几个方法

了解完了 Math 对像的几个方法,我们可以利用它们,来生成不同的随机数

1、JS生成1到10之间的随机整数

js代码:

//方法1
Math.ceil(Math.random() * 10) 
//方法2
Math.round(Math.random()*10)

此JS代码可以随机取1到10之间的随机整数,取0的概率很少

例:js随机生成四个1到10之间的整数

<script>
 for (let index = 0; index < 4; index++) {
 console.log(Math.ceil(Math.random() * 10));
 }
</script>

打印结果: 10 5 3 8

2、JS生成0到9的随机整数

代码:

Math.floor(Math.random()*10);

例:JS随机生成4个0到9的随机整数

<script>
 for (let index = 0; index < 4; index++) {
 console.log(Math.floor(Math.random() * 10));
 }
</script>

打印结果:9 3 0 2

JS生成 [n,m] 的随机整数

方法1:

JS函数

<script>
 function getRandom(min, max) {
 min = Math.ceil(min);
 max = Math.floor(max);
 return Math.floor(Math.random() * (max - min + 1)) + min;
 }
</script>

函数调用:

生成五个10到100之间的整数

<script>
 //调用方法
 // getRandom(10, 100)
 for (let index = 0; index < 5; index++) {
 console.log(getRandom(10, 100));
 }
</script>

打印结果: 48 56 98 23 15

方法2:

JS函数

<script>
 function randomNum(minNum, maxNum) {
 switch (arguments.length) {
 case 1:
 return parseInt(Math.random() * minNum + 1, 10);
 break;
 case 2:
 return parseInt(Math.random() * (maxNum - minNum + 1) + minNum, 10);
 break;
 default:
 return 0;
 break;
 }
 } 
</script>

调用方法:

randomNum(10, 100)

打印结果:77

Tags:

最近发表
标签列表