JavaScript获取自定义范围随机数

在JavaScript中,并没有直接提供自定义范围内获取随机数的方法,但通过Math.random()函数的利用稍加处理即可实现此功能。

在JavaScript中Math.random()方法返回介于0至1之间的一个随机小数,不包括0和1。显然,这个功能不能直接满足我们的需求,我们需要的是从n到m之间的随机整数。

我们先来看第一个需求的实现:获取1到10之间的随机数

/**
 * JS获取1到10随机数
 * 琼台博客 www.qttc.net
 */
 
function rd(){
  return Math.floor(Math.random()*10+1);
}
 
console.log(rd()); // Output: 8

以上公式中,使用了Math.floor()方法。先使用Math.random()方法产生一个小数随机值,然后乘以10使个位数在1至10之间,然后使用Math.floor()方法舍去小数部分即可实现。

在以上案例的基础上我们写一个可以随机产生n至m之间的任意随机整数就非常容易了,请看以下代码

/**
 * JS获取n至m随机整数
 * 琼台博客 www.qttc.net
 */
function rd(n,m){
  var c = m-n+1;  
  return Math.floor(Math.random() * c + n);
}
var n = 5;
var m = 100;
console.log(rd(n,m)); // Output: 80
分享

TITLE: JavaScript获取自定义范围随机数

LINK: https://www.qttc.net/115-javascript-random-range.html

NOTE: 原创内容,转载请注明出自琼台博客