我们先理清几个概念:
1.Math.random(); 结果为0-1间的一个随机数(包括0,不包括1) 2.Math.floor(num); 参数num为一个数值,函数结果为num的整数部分(去掉小数部分只取整数)。 3.Math.round(num); 参数num为一个数值,函数结果为num四舍五入后的整数(会根据后面的小数四舍五入取整数)。 Math:数学对象,提供对数据的数学计算。 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的随机整数。案例:
<script language="javascript">
var q=Math.random(); alert(Math.floor(q*5));</script>
如果你希望生成1到任意值的随机数,公式就是这样的:
parseInt(Math.random()*max,10)+1;
Math.floor(Math.random()*max)+1;Math.ceil(Math.random()*max);