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 相关文章推荐
使用JavaScript库还是自己写代码?
Jan 28 Javascript
javascript使用eval或者new Function进行语法检查
Oct 16 Javascript
Jquery replace 字符替换实现代码
Dec 02 Javascript
js获取dom的高度和宽度(可见区域及部分等等)
Jun 13 Javascript
jquery ajax的success回调函数中实现按钮置灰倒计时
Nov 19 Javascript
JavaScript实现多维数组的方法
Nov 20 Javascript
基于jQuery实现复选框的全选 全不选 反选功能
Nov 24 Javascript
js+cookies实现悬浮购物车的方法
May 25 Javascript
ajax读取数据后使用jqchart显示图表的方法
Jun 10 Javascript
JQuery插入DOM节点的方法
Jun 11 Javascript
JS传播事件、取消事件默认行为、阻止事件传播详解
Aug 14 Javascript
Vue组件通信的几种实现方法
Apr 25 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
一些关于PHP的知识
2006/11/17 PHP
php根据分类合并数组的方法实例详解
2013/11/06 PHP
推荐几个开源的微信开发项目
2014/12/28 PHP
PHP实用函数分享之去除多余的0
2015/02/06 PHP
Symfony2框架学习笔记之表单用法详解
2016/03/18 PHP
php计算给定日期所在周的开始日期和结束日期示例
2017/02/06 PHP
PHP序列化和反序列化深度剖析实例讲解
2020/12/29 PHP
javascript中字符串拼接需注意的问题
2010/07/13 Javascript
Js(JavaScript)中,弹出是或否的选择框示例(confirm用法的实例分析)
2013/07/09 Javascript
jQuery插件formValidator实现表单验证
2016/05/23 Javascript
微信小程序 获取设备信息 API实例详解
2016/10/02 Javascript
微信小程序 action-sheet 反馈上拉菜单简单实例
2017/05/11 Javascript
javaScript实现游戏倒计时功能
2018/11/17 Javascript
详解关于html,css,js三者的加载顺序问题
2019/04/10 Javascript
[00:17]DOTA2荣耀之路5:It’s a disastah!
2018/05/28 DOTA
通过python下载FTP上的文件夹的实现代码
2013/02/10 Python
Python标准库之随机数 (math包、random包)介绍
2014/11/25 Python
python编写爬虫小程序
2015/05/14 Python
Python中Django框架下的staticfiles使用简介
2015/05/30 Python
python实现将一个数组逆序输出的方法
2018/06/25 Python
Python实现矩阵相乘的三种方法小结
2018/07/26 Python
在pytorch中动态调整优化器的学习率方式
2020/06/24 Python
Python字典实现伪切片功能
2020/10/28 Python
基于Html5 canvas实现裁剪图片和马赛克功能及又拍云上传图片 功能
2019/07/09 HTML / CSS
计算机网络专业个人的自我评价
2013/10/17 职场文书
如何写毕业求职自荐信
2013/11/06 职场文书
高中生自我评语大全
2014/01/19 职场文书
2014新课程改革心得体会
2014/03/10 职场文书
岗位竞聘书范文
2014/03/31 职场文书
简单租房协议书范本
2014/08/20 职场文书
学生检讨书范文
2015/01/27 职场文书
违纪检讨书
2015/01/27 职场文书
西安导游词
2015/02/12 职场文书
2016三严三实专题教育活动心得体会
2016/01/06 职场文书
Redis如何一键部署脚本
2021/04/12 Redis
centos8安装nginx1.9.1的详细过程
2021/08/02 Servers