js如何生成[n,m]的随机数

一、总结

一句话总结:生成随机数就是用的Math的random方法。

1、Math.random()得到的数据的左右开闭情况是怎样的?

左闭又开

所以Math.floor(Math.random()*10);  //可均衡获取0到9的随机整数

2、如何随机生成[1,max]的随机数

Math.floor(Math.random()*max)+1;

二、js生成[n,m]的随机数

一、预备知识

Math.ceil();  //向上取整。

Math.floor();  //向下取整。

Math.round();  //四舍五入。

Math.random();  //0.0 ~ 1.0 之间的一个伪随机数。【包含0不包含1】 //比如0.8647578968666494

Math.ceil(Math.random()*10);      // 获取从1到10的随机整数 ,取0的概率极小。

Math.round(Math.random());   //可均衡获取0到1的随机整数

Math.floor(Math.random()*10);  //可均衡获取0到9的随机整数

Math.round(Math.random()*10);  //基本均衡获取0到10的随机整数,其中获取最小值0和最大值10的几率少一半

因为结果在0~0.4 为0,0.5到1.4为1...8.5到9.4为9,9.5到9.9为10。所以头尾的分布区间只有其他数字的一半。

二 、生成[n,m]的随机整数

函数功能:生成[n,m]的随机整数。

在js生成验证码或者随机选中一个选项时很有用。。

//生成从minNum到maxNum的随机数
function randomNum(minNum,maxNum){ switch(arguments.length){ case 1: return parseInt(Math.random()*minNum+1,10); break; case 2: return parseInt(Math.random()*(maxNum-minNum+1)+minNum,10); break; default: return 0; break; }
} 

过程分析:

Math.random()生成[0,1)的数,所以

Math.random()*5生成{0,5)的数。

通常期望得到整数,所以要对得到的结果处理一下。

parseInt(),Math.floor(),Math.ceil()和Math.round()都可得到整数。

parseInt()和Math.floor()结果都是向下取整。

所以Math.random()*5生成的都是[0,4] 的随机整数。

所以生成[1,max]的随机数,公式如下:

// max - 期望的最大值
parseInt(Math.random()*max,10)+1;
Math.floor(Math.random()*max)+1;
Math.ceil(Math.random()*max);

所以生成[0,max]到任意数的随机数,公式如下:

// max - 期望的最大值
parseInt(Math.random()*(max+1),10);
Math.floor(Math.random()*(max+1));

所以希望生成[min,max]的随机数,公式如下:

// max - 期望的最大值
// min - 期望的最小值
parseInt(Math.random()*(max-min+1)+min,10);
Math.floor(Math.random()*(max-min+1)+min);

本文作者starof,因知识本身在变化,作者也在不断学习成长,文章内容也不定时更新,为避免误导读者,方便追根溯源,请诸位转载注明出处:http://www.cnblogs.com/starof/p/4988516.html有问题欢迎与我讨论,共同进步。

js如何生成[n,m]的随机数相关推荐

  1. js生成[n,m]的随机数

    一.预备知识 Math.ceil();  //向上取整. Math.floor();  //向下取整. Math.round();  //四舍五入. Math.random();  //0.0 ~ 1 ...

  2. php mysql随机数不重复,js生成不重复的随机数

    这篇文章主要为大家详细介绍了js生成不重复的随机数,具有一定的参考价值,可以用来参考一下. 感兴趣的小伙伴,下面一起跟随512笔记的小编罗X来看看吧. JS代码如下: /** * * @param * ...

  3. js和php能生成一样的随机数_JavaScript_JS生成某个范围的随机数【四种情况详解】,前言: JS没有现成的函数,能 - phpStudy...

    JS生成某个范围的随机数[四种情况详解] 前言: JS没有现成的函数,能够直接生成指定范围的随机数. 但是它有个函数:Math.random()  这个函数可以生成 [0,1) 的一个随机数. 利用它 ...

  4. JavaScript 随机数 – 如何在 JS 中生成随机数

    在使用 JavaScript 程序时,有时您可能需要生成一个随机数. 例如,您可能希望在开发 JavaScript 游戏(例如猜数字游戏)时生成一个随机数. JavaScript 有许多用于处理数字和 ...

  5. 风尚云网前端-js随机生成自定义位随机字符

     风尚云网前端-js随机生成自定义位随机字符 废话不多说: 上代码 // 随机生成随机数randomPassword(size) {var seed = new Array("A" ...

  6. html 随机字母,JS简单生成由字母数字组合随机字符串示例

    本文实例讲述了JS简单生成由字母数字组合随机字符串.分享给大家供大家参考,具体如下: 前言 最近有个需求,是需要生成3-32位长度的字母数字组合的随机字符串,另一个是生成43位随机字符串. 方法一 奇 ...

  7. html自动生成验证码,JS自动生成动态HTML验证码页面

    本文为大家分享了JS自动生成动态HTML验证码页面,输入错误自动清空输入框功能,供大家参考,具体内容如下 验证码 #code { font-family: Arial; font-style: ita ...

  8. js导出生成PDF插件

    js导出生成PDF插件[jsPDF] 插件官网:http://parall.ax/products/jspdf 浏览器支持: Browser Compatibility jsPDF will work ...

  9. VBA实现两种方法生成任意概率分布的随机数

    引子 一把武器的品质有分为最下级.下级.中级.上级.最上级五档,我希望在击杀一只怪物的时候,这把武器的掉率:最下级>下级>中级>上级>最上级,问如何设计满足上面的需求? 在游戏 ...

最新文章

  1. 2.2线性表的数据展示【王道数据结构】
  2. 面板什么都看不到 unity_杨幂今年第一封太敷衍!最新大片不露脸不秀身材,什么都看不到...
  3. Tex2Word vs Word2Tex
  4. java-HashMap源码学习
  5. ASP.NET MVC学习之控制器篇
  6. ajax中加入if,如何添加if语句到Ajax
  7. 打表(1215)七夕节
  8. 19. JavaScript RegExp 对象
  9. 385.迷你语法分析器
  10. 计算机专业学生学校活动,校园IT文化节活动策划方案
  11. DOS命令查看局域网所有IP
  12. 2021-03-25--通信网的身份认证与鉴权机制
  13. 关于2012(世界末日)
  14. 面板数据、工具变量选择和Hausman检验的若干问题
  15. 还在期待安卓9.0吗?Android 10.0要来了
  16. 全球与中国汽车真皮内饰市场发展模式及前景趋势预测报告2022-2028年版
  17. mgo EnsureIndex注意事项
  18. r -括号[ ]和双括号[[ ]]之间的差异
  19. 集合语音识别、音频蓝牙、对话控制多功能一体的WTK6900H-32N眼部按摩器应用设计方案
  20. JavaScript小项目之BMI值计算

热门文章

  1. drupal建设多语言站点之四:不同语言的站点名称
  2. 临近期末,图书管理系统课设项目安排上(附源码)
  3. 面试结尾——你有什么问题?
  4. 【vue】.native给组件绑定原生事件
  5. Python发送邮件(带附件)
  6. jenkins构建一个maven项目[五]
  7. Ajax在火狐下提示跨域问题的解决方案
  8. Xstream解析报文
  9. 强大的vim配置,让编程更随意
  10. Havel-Hakimi定理