JS生成某个范围的随机数【四种情况详解】


Posted in Javascript onApril 20, 2016

前言:

JS没有现成的函数,能够直接生成指定范围的随机数。

但是它有个函数:Math.random()  这个函数可以生成 [0,1) 的一个随机数。

利用它,我们就可以生成指定范围内的随机数。

而涉及范围的话,就有个边界值的问题。这样就包含四种情况:

1)min ≤ r ≤ max  (一般这种比较常见)

2)min ≤ r < max

3) min < r ≤ max

4)min < r < max

一、min ≤ r ≤ max

function RandomNumBoth(Min,Max){
      var Range = Max - Min;
      var Rand = Math.random();
      var num = Min + Math.round(Rand * Range); //四舍五入
      return num;
}

二、min ≤ r < max

function RandomNum(Min, Max) {
      var Range = Max - Min;
      var Rand = Math.random();
      var num = Min + Math.floor(Rand * Range); //舍去
      return num;
}

三、min < r ≤ max

function RandomNum(Min, Max) {
      var Range = Max - Min;
      var Rand = Math.random();
      if(Math.round(Rand * Range)==0){       
        return Min + 1;
      }
      var num = Min + Math.round(Rand * Range);
      return num;
}

四、min < r < max 

function RandomNum(Min, Max) {
      var Range = Max - Min;
      var Rand = Math.random();
      if(Math.round(Rand * Range)==0){
        return Min + 1;
      }else if(Math.round(Rand * Max)==Max)
      {
        index++;
        return Max - 1;
      }else{
        var num = Min + Math.round(Rand * Range) - 1;
        return num;
      }
 }

以上这篇JS生成某个范围的随机数【四种情况详解】就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
IE6 弹出Iframe层中的文本框“经常”无法获得输入焦点
Dec 27 Javascript
javascript 数组学习资料收集
Apr 11 Javascript
瀑布流布局并自动加载实现代码
Mar 12 Javascript
JavaScript获取各大浏览器信息图示
Nov 20 Javascript
js实现获取两个日期之间所有日期的方法
Jun 17 Javascript
微信公众号-获取用户信息(网页授权获取)实现步骤
Oct 21 Javascript
jQuery自动或手动图片切换效果
Oct 11 jQuery
JS原型继承四步曲及原型继承图一览
Nov 28 Javascript
详解vue.js数据传递以及数据分发slot
Jan 20 Javascript
尝试自己动手用react来写一个分页组件(小结)
Feb 09 Javascript
vue element-ui实现动态面包屑导航
Dec 23 Javascript
基于Vue的侧边目录组件的实现
Feb 05 Javascript
浅析JS动态创建元素【两种方法】
Apr 20 #Javascript
纯JS代码实现一键分享功能
Apr 20 #Javascript
JavaScript动态生成二维码图片
Apr 20 #Javascript
JS动态创建元素的两种方法
Apr 20 #Javascript
深入浅析Extjs中store分组功能的使用方法
Apr 20 #Javascript
JS实时弹出新消息提示框并有提示音响起的实现代码
Apr 20 #Javascript
JavaScript  cookie 跨域访问之广告推广
Apr 20 #Javascript
You might like
肝肠寸断了解下!盘点史上最伤心的十大动漫
2020/03/04 日漫
几个学习PHP的网址
2006/11/25 PHP
php遍历CSV类实例
2015/04/14 PHP
用PHP生成excel文件到指定目录
2015/06/22 PHP
简单概括PHP的字符串中单引号与双引号的区别
2016/05/07 PHP
PHP实现的简单异常处理类示例
2017/05/04 PHP
JScript 脚本实现文件下载 一般用于下载木马
2009/10/29 Javascript
javascript学习笔记(五)正则表达式
2011/04/08 Javascript
javascript string字符串优化问题
2011/07/31 Javascript
关于JAVASCRIPT urldecode URL解码的问题
2012/01/08 Javascript
基于jquery的不规则矩形的排列实现代码
2012/04/16 Javascript
AngularJS select设置默认值的实现方法
2017/08/25 Javascript
JS实现带导航城市列表以及输入搜索功能
2018/01/04 Javascript
原生javascript AJAX 三级联动的实现代码
2018/05/04 Javascript
vuejs实现折叠面板展开收缩动画效果
2018/09/06 Javascript
在VUE style中使用data中的变量的方法
2020/06/19 Javascript
javascript中layim之查找好友查找群组
2021/02/06 Javascript
读写json中文ASCII乱码问题的解决方法
2016/11/05 Python
Numpy掩码式数组详解
2018/04/17 Python
解决Pycharm中import时无法识别自己写的程序方法
2018/05/18 Python
Tensorflow限制CPU个数实例
2020/02/06 Python
python将音频进行变速的操作方法
2020/04/08 Python
pycharm专业版远程登录服务器的详细教程
2020/09/15 Python
基于HTML5的WebGL实现json和echarts图表展现在同一个界面
2017/10/26 HTML / CSS
英国花园药房: The Garden Pharmacy
2017/12/28 全球购物
一加手机美国官方网站:OnePlus美国
2019/09/19 全球购物
阿里巴巴英国:Alibaba英国
2019/12/11 全球购物
Ego Shoes官网:英国时髦鞋类品牌
2020/10/19 全球购物
护理专业应届毕业生推荐信
2013/11/15 职场文书
工程招投标邀请书
2014/01/30 职场文书
大学应届生的自我评价
2014/03/06 职场文书
退学证明范本3篇
2014/10/29 职场文书
元旦晚会主持词开场白
2015/05/28 职场文书
2016高考感言
2015/08/01 职场文书
Java SSH 秘钥连接mysql数据库的方法
2021/06/28 Java/Android
AJAX实现省市县三级联动效果
2021/10/16 Javascript