Welcome 微信登录

首页 / 脚本样式 / JavaScript / JS中生成随机数的用法及相关函数

先为大家介绍一些关于随机数的相关函数:
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;}
以上就是本文的详细内容,希望对大家的学习有所帮助。