JS中生成随机数的用法及相关函数


Posted in Javascript onJanuary 09, 2016

先为大家介绍一些关于随机数的相关函数:
var Rand = Math.random();

  • 1.Math.random(); 结果为0-1间的一个随机数(包括0,不包括1)
  • 2.Math.floor(num); 参数num为一个数值,函数结果为num的整数部分。
  • 3.Math.round(num); 参数num为一个数值,函数结果为num四舍五入后的整数。

Math:数学对象,提供对数据的数学计算。
Math.random(); 返回0和1间(包括0,不包括1)的一个随机数。

Math.ceil(n); 返回大于等于n的最小整数。
Math.ceil(Math.random()*10);时,主要获取1到10的随机整数,取0的几率极小。

Math.round(n); 返回n四舍五入后整数的值。
Math.round(Math.random());可均衡获取0到1的随机整数。
Math.round(Math.random()*10);时,可基本均衡获取0到10的随机整数,其中获取最小值0和最大值10的几率少一半。

Math.floor(n); 返回小于等于n的最大整数。
Math.floor(Math.random()*10);时,可均衡获取0到9的随机整数。
随机抽奖,还可扩展,比如设置抽奖的概率,和数据库一起使用。

//中奖概率需求,100%中奖,有3项奖品,但是抽到书本的概率为20%
function draw() {
  var d_s = GetRandom(100);
  if (d_s >= 1 && d_s <= 40) {
    alert('恭喜您抽到XXX!');
  } else if (d_s >= 41 && d_s <= 80) {
    alert('恭喜您抽到XXX!');
  } else {
    alert('恭喜您抽到书本!');
  }
}

对应的js生成随机数的函数代码:

<script> 
 2function GetRandomNum(Min,Max)
{  
  var Range = Max - Min;  
  var Rand = Math.random();  
  return(Min + Math.round(Rand * Range));  
}  
 8var num = GetRandomNum(1,10);  
 9alert(num);  
</script>

var chars = ['0','1','2','3','4','5','6','7','8','9','A','B','C','D','E','F','G','H','I','J','K','L','M','N','O','P','Q','R','S','T','U','V','W','X','Y','Z'];

function generateMixed(n) {
   var res = "";
   for(var i = 0; i < n ; i ++) {
     var id = Math.ceil(Math.random()*35);
     res += chars[id];
   }
   return res;
}

以上就是本文的详细内容,希望对大家的学习有所帮助。

Javascript 相关文章推荐
JXTree对象,读取外部xml文件数据,生成树的函数
Apr 02 Javascript
Underscore.js 的模板功能介绍与应用
Dec 24 Javascript
js 回车提交表单两种实现方法
Dec 31 Javascript
jQuery让控件左右移动的三种实现方法
Sep 08 Javascript
浅析javascript 定时器
Dec 23 Javascript
JavaScript设计模式之工厂方法模式介绍
Dec 28 Javascript
jQuery监控文本框事件并作相应处理的方法
Apr 16 Javascript
javascript断点调试心得分享
Apr 23 Javascript
Vue中父组件向子组件通信的方法
Jul 11 Javascript
JavaScript for循环 if判断语句(学习笔记)
Oct 11 Javascript
详解react、redux、react-redux之间的关系
Apr 11 Javascript
vue 循环加载数据并获取第一条记录的方法
Sep 26 Javascript
JavaScript电子时钟倒计时
Jan 09 #Javascript
bootstrap-treeview自定义双击事件实现方法
Jan 09 #Javascript
WordPress中利用AJAX异步获取评论用户头像的方法
Jan 08 #Javascript
学习JavaScript设计模式之状态模式
Jan 08 #Javascript
jQuery CSS3相结合实现时钟插件
Jan 08 #Javascript
js实现对ajax请求面向对象的封装
Jan 08 #Javascript
javascript弹性运动效果简单实现方法
Jan 08 #Javascript
You might like
PHP的可变变量名的使用方法分享
2012/02/05 PHP
从PHP的源码中深入了解stdClass类
2014/04/18 PHP
完美实现wordpress禁止文章修订和自动保存的方法
2014/11/03 PHP
php中in_array函数用法探究
2014/11/25 PHP
javascript 闭包疑问
2010/12/30 Javascript
js实现的跟随鼠标移动的时钟效果(中英文日期显示)
2011/01/17 Javascript
JS实现简单的Canvas画图实例
2013/07/04 Javascript
javascript 弹出的窗口返回值给父窗口具体实现
2013/11/23 Javascript
引用外部脚本时script标签关闭的写法
2014/01/20 Javascript
Javascript实现汉字和拼音互转的终极方案
2016/10/19 Javascript
VUE预渲染及遇到的坑
2018/09/03 Javascript
angular4应用中输入的最小值和最大值的方法
2019/05/17 Javascript
通过图带你深入了解vue的响应式原理
2019/06/21 Javascript
layui自定义验证,用ajax查询后台是否有重复数据,form.verify的例子
2019/09/06 Javascript
vue2路由方式--嵌套路由实现方法分析
2020/03/06 Javascript
python使用wxpython开发简单记事本的方法
2015/05/20 Python
在Python的Django框架中显示对象子集的方法
2015/07/21 Python
解决Python 遍历字典时删除元素报异常的问题
2016/09/11 Python
Python分析学校四六级过关情况
2017/11/22 Python
Pytorch入门之mnist分类实例
2018/04/14 Python
python数字图像处理之高级形态学处理
2018/04/27 Python
Python数据可视化库seaborn的使用总结
2019/01/15 Python
使用Python自动化破解自定义字体混淆信息的方法实例
2019/02/13 Python
python进程和线程用法知识点总结
2019/05/28 Python
PyCharm 无法 import pandas 程序卡住的解决方式
2020/03/09 Python
Python键鼠操作自动化库PyAutoGUI简介(小结)
2020/05/17 Python
Python限制内存和CPU使用量的方法(Unix系统适用)
2020/08/04 Python
css3实现超炫风车特效
2014/11/12 HTML / CSS
健康监测猫砂:Pretty Litter
2017/05/25 全球购物
Luxplus荷兰:以会员价购买美容产品等,独家优惠
2019/08/30 全球购物
六十岁生日答谢词
2014/01/10 职场文书
超市创业计划书
2014/09/15 职场文书
个人专业技术总结
2015/03/05 职场文书
值班管理制度范本
2015/08/06 职场文书
2016年度优秀辅导员事迹材料
2016/02/26 职场文书
2016年社区国庆节活动总结
2016/04/01 职场文书