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 相关文章推荐
JS小功能(offsetLeft实现图片滚动效果)实例代码
Nov 28 Javascript
jQuery实现图片轮播效果代码(基于jquery.pack.js插件)
Jun 02 Javascript
Node.js 日志处理模块log4js
Aug 28 Javascript
Angular中使用ui router实现系统权限控制及开发遇到问题
Sep 23 Javascript
基于JS组件实现拖动滑块验证功能(代码分享)
Nov 18 Javascript
BootStrap实现带关闭按钮功能
Feb 15 Javascript
AngularJS全局警告框实现方法示例
May 18 Javascript
JavaScript实现左侧菜单效果
Dec 14 Javascript
详解webpack引用jquery(第三方模块)的三种办法
Aug 21 jQuery
在Node.js中将SVG图像转换为PNG,JPEG,TIFF,WEBP和HEIF格式的方法
Aug 22 Javascript
layui实现checkbox的目录树tree的例子
Sep 12 Javascript
Vue项目如何引入bootstrap、elementUI、echarts
Nov 26 Vue.js
浅析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
PHP全概率运算函数(优化版) Webgame开发必备
2011/07/04 PHP
php 使用GD库为页面增加水印示例代码
2014/03/24 PHP
跟我学Laravel之配置Laravel
2014/10/15 PHP
PHP 数组基本操作方法详解
2016/06/17 PHP
PHP基于redis计数器类定义与用法示例
2018/02/08 PHP
XML+XSL 与 HTML 两种方案的结合
2007/04/22 Javascript
javascript 表单的友好用户体现
2009/01/07 Javascript
jquery控制listbox中项的移动并排序的实现代码
2010/09/28 Javascript
借助script进行Http跨域请求:JSONP实现原理及代码
2013/03/19 Javascript
jquery滚动组件(vticker.js)实现页面动态数据的滚动效果
2013/07/03 Javascript
SeaJS入门教程系列之使用SeaJS(二)
2014/03/03 Javascript
在页面加载完成后通过jquery给多个span赋值
2014/05/21 Javascript
javaScript中slice函数用法实例分析
2015/06/08 Javascript
javascript创建函数的20种方式汇总
2015/06/23 Javascript
JavaScript位移运算符(无符号) &gt;&gt;&gt; 三个大于号 的使用方法详解
2016/03/31 Javascript
angular.js分页代码的实例
2016/07/27 Javascript
在javascript中,null>=0 为真,null==0却为假,null的值详解
2017/02/22 Javascript
js鼠标跟随运动效果
2017/03/11 Javascript
微信小程序实现MUI数字输入框效果
2018/01/31 Javascript
VUE+Element环境搭建与安装的方法步骤
2019/01/24 Javascript
OpenLayers3实现鼠标移动显示坐标
2020/09/25 Javascript
[02:40]DOTA2英雄基础教程 巨牙海民
2013/12/23 DOTA
Python使用requests及BeautifulSoup构建爬虫实例代码
2018/01/24 Python
python实现控制电脑鼠标和键盘,登录QQ的方法示例
2019/07/06 Python
Python PO设计模式的具体使用
2019/08/16 Python
Python hashlib模块加密过程解析
2019/11/05 Python
解决python中0x80072ee2错误的方法
2020/07/19 Python
python 常用日期处理-- datetime 模块的使用
2020/09/02 Python
使用数据结构给女朋友写个Html5走迷宫游戏
2019/11/26 HTML / CSS
曼联官方网上商店:Manchester United Direct
2017/07/28 全球购物
中国跨境在线时尚零售商:Bellelily
2018/04/06 全球购物
国际花店:Pickup Flowers
2020/04/10 全球购物
语文课外活动总结
2014/08/27 职场文书
2015年档案室工作总结
2015/05/23 职场文书
导游词之大雁塔景区
2019/09/17 职场文书
深入理解java.lang.String类的不可变性
2021/06/27 Java/Android