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 相关文章推荐
jquery ajax提交表单数据的两种方式
Nov 24 Javascript
JavaScript原型继承之基础机制分析
Aug 26 Javascript
关于全局变量和局部变量的那些事
Jan 11 Javascript
js 触发select onchange事件代码
Mar 20 Javascript
jQuery如何取id有.的值一般的方法是取不到的
Apr 18 Javascript
javascript的数组和常用函数详解
May 09 Javascript
Node.js中HTTP模块与事件模块详解
Nov 14 Javascript
JavaScript定时器和优化的取消定时器方法
Jul 03 Javascript
使用Chart.js图表库制作漂亮的响应式表单
Oct 28 Javascript
AngularJS Module方法详解
Dec 08 Javascript
vue组件中点击按钮后修改输入框的状态实例代码
Apr 14 Javascript
微信小程序实现分页加载效果
Nov 19 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
YII2 实现多语言配置的方法分享
2017/01/11 PHP
php生成毫秒时间戳的实例讲解
2017/09/22 PHP
JS处理VBArray的函数使用说明
2008/05/11 Javascript
jquery 问答知识整理
2010/02/11 Javascript
由JavaScript技术实现的web小游戏(不含网游)
2010/06/12 Javascript
JavaScript入门之基本函数详解
2011/10/21 Javascript
兼容IE和FF的图片上传前预览js代码
2013/05/28 Javascript
利用js实现遮罩以及弹出可移动登录窗口
2013/07/08 Javascript
JQuery 获取json数据$.getJSON方法的实例代码
2013/08/02 Javascript
打造个性化的功能强大的Jquery虚拟键盘(VirtualKeyboard)
2014/10/11 Javascript
js控制多图左右滚动切换效果代码分享
2015/08/26 Javascript
IE8下jQuery改变png图片透明度时出现的黑边
2015/08/30 Javascript
Angular在一个页面中使用两个ng-app的方法
2017/02/20 Javascript
基于JavaScript实现验证码功能
2017/04/01 Javascript
你可能不知道的JSON.stringify()详解
2017/08/17 Javascript
基于Bootstrap框架菜鸟入门教程(推荐)
2017/09/17 Javascript
web前端vue实现插值文本和输出原始html
2018/01/19 Javascript
React如何避免重渲染
2018/04/10 Javascript
vue 基于element-ui 分页组件封装的实例代码
2018/12/10 Javascript
[56:41]2018DOTA2亚洲邀请赛 3.31 小组赛 A组 Newbee vs OG
2018/04/01 DOTA
Linux 发邮件磁盘空间监控(python)
2016/04/23 Python
对python-3-print重定向输出的几种方法总结
2018/05/11 Python
对python的unittest架构公共参数token提取方法详解
2018/12/17 Python
Django中如何防范CSRF跨站点请求伪造攻击的实现
2019/04/28 Python
Python3内置模块random随机方法小结
2019/07/13 Python
用Pelican搭建一个极简静态博客系统过程解析
2019/08/22 Python
浅析Python中字符串的intern机制
2020/10/03 Python
matplotlib制作雷达图报错ValueError的实现
2021/01/05 Python
保加利亚运动鞋购物网站:SneakerStudio.bg
2020/12/23 全球购物
什么是设计模式
2012/06/17 面试题
施工安全协议书
2013/12/11 职场文书
安全事故检讨书
2014/01/18 职场文书
公司表扬稿范文
2015/05/05 职场文书
2016年暑假学生家长评语
2015/12/01 职场文书
大学生饮品店创业计划书范文
2019/07/10 职场文书
SpringBoot详解整合Redis缓存方法
2022/07/15 Java/Android