在javascript中,获取随机数,一般采用这样的方式:
Math.floor(Math.random() * ( n + 1));
n为随机数的上限。
如想取0~1000的随机数则:
Math.floor(Math.random() * ( 1000 + 1));
当然,自己实现是更好的,比如下面的几个例子。
1、用日期生成随机数
复制代码 代码示例:
<script type="text/javascript">
rnd.today = new Date();
rnd.seed = rnd.today.getTime();
function rnd() {
rnd.seed = (rnd.seed*9301+49297) % 233280;
return rnd.seed/(233280.0);
}
function rand(number) {
return Math.ceil(rnd()*number);
}
var number = rand(10);
alert(number);
</script>
2、随机数应用-生成平均数
复制代码 代码示例:
<html>
<head>
<title>Math_www.jb200.com</title>
</head>
<body>
<script language="javascript" type="text/javascript">
total=0
for(i=1;i<=5000;i++)
{num=Math.random();
total +=num
}
average = total/5000
average = Math.round(average*1000)/1000
document.write("<h1>平均数:"+average+"</h1>")
</script>
</body>
</html>
3、产生指定字母与数字范围内的随机数
复制代码 代码示例:
<mce:script type="text/javascript">
<!--
function GetRandomNum(Min,Max)
{
var Range = Max - Min;
var Rand = Math.random();
return(Min + Math.round(Rand * Range));
}
var num = GetRandomNum(1,10);
alert(num);
// --></mce: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;
}
就举这三个例子吧,供大家学习参考,在有些场合,还是能用到js随机数的,有兴趣的朋友,可以多写几个小例子,熟能生巧。