js和php能生成一样的随机数_JS中生成随机数与随机字符串的方法

本文介绍了如何利用JavaScript生成指定范围内的随机数以及随机字符串。通过Math.random()和Math.round()函数,可以轻松获取两个数值之间的随机整数。此外,还展示了如何创建一个函数,从预定义字符数组中随机选取元素,生成特定长度的随机字符串。这些方法在开发中常用于生成订单号、验证码等场景。
摘要由CSDN通过智能技术生成

前几天写了篇利用PHP生成唯一订单号的方法,其中利用到了PHP中的随机,那么今天就来说一说,利用JS生成随机数的几种方法。

有JS有现成的取随机数的函数,下面就能利用到几种,可以生成规定的两个数值之间的随机数,也可以生成一串随机的字符串

利用JS编写函数,随机两个值之间的数字

代码

我们先写出一个取两个数值之间的随机数的函数function GetRandomNum(Min,Max){

var Range = Max - Min;

var Rand = Math.random();

return(Min + Math.round(Rand * Range));

}

调用上面的函数,并取1到10之间的一个随机数

调用代码如下//飞鸟慕鱼博客

var num = GetRandomNum(1,10);

alert(num);

代码截图

925e81b38c0fa4ee55bebb94bc97d3ec.png

上面用到的函数解释

Math:数学对象,提供对数据的数学计算。

Math.random(); 结果为0-1间的一个随机数(包括0,不包括1)

Math.round(num); 参数num为一个数值,函数结果为num四舍五入后的整数。

用Math.round(Math.random());可均衡获取0到1的随机整数。

用Math.round(Math.random()*10);时,可基本均衡获取0到10的随机整数,其中获取最小值0和最大值10的几率少一半。

利用JS生成一串随机的字符串

我们可以巧妙的利用生成的随机,可以获取一个数组中不同下标的值,来达到生成随机不同字符串的目的

定义一个数组chars

代码var chars =['0','1','2','3','4','5','6','7','8','9','A','B','C','D','E','F','G'];

定义函数,并随机取出数组中的值,组合成字符串

代码function generateMixed(n) {

var res = "";

for(var i = 0; i 

var id = Math.ceil(Math.random()*17);

res += chars[id];

}

return res;

}

代码注释:

利用一个自定义的数组并随机生成它的下标的形式,来达到输出随机字符串的形式,

数组chars 可以自定义,但是他的个数减去1再与Math.random()生成的随机数相乘,不然会出现空值的情况,导致函数运行失败。

代码截图

54302c3e85671bef8de1dc0eb071f89d.png

上用用到的JS函数解释

Math.ceil(n); 返回大于等于n的最小整数。

用Math.ceil(Math.random()*10);时,主要获取1到10的随机整数,取0的几率极小。

Math.floor(n); 返回小于等于n的最大整数。

用Math.floor(Math.random()*10);时,可均衡获取0到9的随机整数。

PS:这篇文章写的有点乱,有时间了再整理一下。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值