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 相关文章推荐
jQuery 1.2.x 升? 1.3.x 注意事项
May 06 Javascript
js常用代码段整理
Nov 30 Javascript
Jquery获取复选框被选中值的简单方法
Jul 04 Javascript
jQuery 3.0 的变化及使用方法
Feb 01 Javascript
举例讲解如何判断JavaScript中对象的类型
Apr 22 Javascript
使用OPENLAYERS3实现点选的方法
Sep 24 Javascript
Vue + better-scroll 实现移动端字母索引导航功能
May 07 Javascript
详解JSON Web Token 入门教程
Jul 30 Javascript
vue如何安装使用Quill富文本编辑器
Sep 21 Javascript
element-ui多文件上传的实现示例
Apr 10 Javascript
jquery+ajax实现上传图片并显示上传进度功能【附php后台接收】
Jun 06 jQuery
React Native中ScrollView组件轮播图与ListView渲染列表组件用法实例分析
Jan 06 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
mysql 的 like 问题,超强毕杀记!!!
2007/01/18 PHP
php 防止单引号,双引号在接受页面转义
2008/07/10 PHP
php5.3 不支持 session_register() 此函数已启用的解决方法
2013/11/12 PHP
php的SimpleXML方法读写XML接口文件实例解析
2014/06/16 PHP
php实现的简易扫雷游戏实例
2015/07/09 PHP
PHP中使用array函数新建一个数组
2015/11/19 PHP
PHP图片裁剪与缩放示例(无损裁剪图片)
2017/02/08 PHP
thinkPHP框架中layer.js的封装与使用方法示例
2019/01/18 PHP
JavaScript中null与undefined分析
2009/07/25 Javascript
使用javascript实现判断当前浏览器
2015/04/14 Javascript
浅析Javascript匿名函数与自执行函数
2016/02/06 Javascript
JS 根据子网掩码,网关计算出所有IP地址范围示例
2020/04/23 Javascript
使用BootStrapValidator完成前端输入验证
2016/09/28 Javascript
巧用数组制作图片切换js代码
2016/11/29 Javascript
Bootstrap Table使用整理(一)
2017/06/09 Javascript
微信小程序使用蓝牙小插件
2019/09/23 Javascript
微信内置浏览器图片查看器的代码实例
2019/10/08 Javascript
python获取本地计算机名字的方法
2015/04/29 Python
python冒泡排序简单实现方法
2015/07/09 Python
使用Python脚本生成随机IP的简单方法
2015/07/30 Python
Python文件夹与文件的相关操作(推荐)
2016/07/25 Python
运动检测ViBe算法python实现代码
2018/01/09 Python
对python3 Serial 串口助手的接收读取数据方法详解
2019/06/12 Python
python实现在函数中修改变量值的方法
2019/07/16 Python
基于python3的socket聊天编程
2020/02/17 Python
python 截取XML中bndbox的坐标中的图像,另存为jpg的实例
2020/03/10 Python
Python实现初始化不同的变量类型为空值
2020/06/02 Python
python反爬虫方法的优缺点分析
2020/11/25 Python
Python 实现RSA加解密文本文件
2020/12/30 Python
python利用opencv实现颜色检测
2021/02/23 Python
HTML5中Localstorage的使用教程
2015/07/09 HTML / CSS
优秀班集体获奖感言
2014/02/03 职场文书
企业后勤岗位职责
2014/02/28 职场文书
三八红旗手先进事迹材料
2014/05/13 职场文书
竞选班长演讲稿400字
2014/08/22 职场文书
人代会简报
2015/07/21 职场文书