JavaScript生成随机数的三种常用方法
作者:小括号时间:2026-10-28 10:52:14浏览:559
本文介绍JavaScript中生成随机数的三种主要方式。首先解析Math.random()及其配合Math.floor()生成指定范围整数的技巧;其次展示利用Date对象时间戳生成随机整数的方法;最后提供一个基于线性同余算法的伪随机数生成器代码,适用于需要更复杂随机逻辑的场景。
使用内置Math.random生成随机数
1.利用系统内置的随机数生成函数:
具体实现如下:
Math.random(); //此方法生成一个介于0至1之间的浮点数值。
Math.floor(Math.random()*10+1); //生成1至10之间的整数
Math.floor(Math.random()*24);//生成0至23之间的整数
基于时间戳生成随机数
2.依据当前时间戳,同样可以生成随机数:
具体实现如下:
var now=new Date();
var number = now.getSeconds(); //该语句生成一个基于当前秒数的0至59的整数。
var now=new Date();
var number = now.getSeconds()%43; //该语句生成一个基于当前秒数取模43后的0至42的整数。
线性同余算法伪随机数生成器
3.一个性能卓越的随机数生成算法,适用于多种应用场景。 源代码
具体实现如下:
<script language="JavaScript"><!--
// The Central Randomizer 1.3 (C) 1997 by Paul Houle (houle@msc.cornell.edu)
// 参考链接: http://www.msc.cornell.edu/~houle/javascript/randomizer.html
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);
};
// 中心随机器代码结束。 -->
</script>作者最新文章
JS语法错误会阻止加载吗?区分SyntaxError与资源加载失败
2026-11-05 16:08:46
JavaScript常见SyntaxError语法错误排查与修复方法
2026-11-05 13:58:44
JS中slice、substring和substr截取字符串的区别
2026-11-05 13:43:47
JS 转 TS 手动迁移最佳实践:从配置 tsconfig 到消除 any 类型
2026-11-05 11:53:32
为什么JS数组push后得到的是数字而不是数组?
2026-11-05 09:59:18
