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('恭喜您抽到书本!');
    }
}

你可能感兴趣的:(JavaScript)