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 脚本的加载与执行
Apr 19 Javascript
ASP中Sub和Function的区别说明
Aug 30 Javascript
JS去除字符串两端空格的简单实例
Dec 27 Javascript
jquery自定义函数的多种方法
Jan 09 Javascript
javascript最基本的函数汇总
Jun 25 Javascript
jQuery计算文本框字数及限制文本框字数的方法
Mar 01 Javascript
javascript字符串对象常用api函数小结(连接,替换,分割,转换等)
Sep 20 Javascript
JS正则表达式判断有效数实例代码
Mar 13 Javascript
JS实现的找零张数最小问题示例
Nov 28 Javascript
微信小程序数据分析之自定义分析的实现
Aug 17 Javascript
angularjs模态框的使用代码实例
Dec 20 Javascript
ES6对象操作实例详解
May 23 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
2019年中国咖啡业现状与发展趋势
2021/03/04 咖啡文化
Yii学习总结之数据访问对象 (DAO)
2015/02/22 PHP
PHP开发框架laravel安装与配置教程
2015/03/13 PHP
PHP中Session和Cookie是如何操作的
2015/10/10 PHP
php实现网站留言板功能
2015/11/04 PHP
浅析PHP数据导出知识点
2018/02/17 PHP
Yii 框架入口脚本示例分析
2020/05/19 PHP
表格 隔行换色升级版
2009/11/07 Javascript
jquery简单实现图片切换效果的方法
2015/05/12 Javascript
jquery实现移动端点击图片查看大图特效
2020/09/11 Javascript
原生JavaScript实现异步多文件上传
2015/12/02 Javascript
JavaScript实现form表单的多文件上传
2020/03/27 Javascript
ES7中利用Await减少回调嵌套的方法详解
2017/11/01 Javascript
详解使用 Node.js 开发简单的脚手架工具
2018/06/08 Javascript
Vue如何实现响应式系统
2018/07/11 Javascript
JS 数组随机洗牌的实例代码
2018/09/12 Javascript
Element-ui tree组件自定义节点使用方法代码详解
2018/09/17 Javascript
javascript中可能用得到的全部的排序算法
2020/03/05 Javascript
用Python实现通过哈希算法检测图片重复的教程
2015/04/02 Python
wx.CheckBox创建复选框控件并响应鼠标点击事件
2018/04/25 Python
python使用装饰器作日志处理的方法
2019/07/11 Python
python3 tkinter实现添加图片和文本
2019/11/26 Python
Python Selenium参数配置方法解析
2020/01/19 Python
Python3+Selenium+Chrome实现自动填写WPS表单
2020/02/12 Python
Python 线性回归分析以及评价指标详解
2020/04/02 Python
python 写一个性能测试工具(一)
2020/10/24 Python
基于CSS3实现的漂亮Menu菜单效果代码
2015/09/10 HTML / CSS
HTML5 embed标签定义和用法详解
2014/05/09 HTML / CSS
法国和欧洲海边和滑雪度假:Pierre & Vacances
2017/01/04 全球购物
西班牙著名的珠宝首饰品牌:P D PAOLA
2018/09/15 全球购物
财务会计专业毕业生自荐信
2013/10/19 职场文书
2013年高中生自我评价
2013/10/23 职场文书
北大研究生linux应用求职信
2013/10/29 职场文书
班主任工作经验材料
2014/02/02 职场文书
小学开学标语
2014/07/01 职场文书
公司离职证明范本(汇总)
2014/09/10 职场文书