随机数 / 抽奖
随机整数/小数、骰子、列表洗牌、加权抽奖一站搞定,支持去重与种子复现,密码学随机源,纯前端本地运行。
纯前端处理,数据不上传
工具介绍
需要随机的场景比想象中多:游戏里掷个骰子、活动现场抽奖、上课随机点名、把人随机分组、做实验要随机数种子,或者只是纠结时让随机帮你做个决定。靠脑子「随便想一个」并不真正随机,也难以服众,用一个公平的随机工具最省心。
本工具提供四种常用模式。随机数:设定最小值、最大值、生成数量与小数位,可选择「不重复」一次性生成多个互不相同的整数,适合抽签号、生成测试数据。骰子:自定义骰子数量与面数,一键掷出并显示每颗点数与合计,桌游、决策都用得上。洗牌:把列表每行一项粘进去,即可得到随机排列,用于排序、分桌、定顺序。抽奖 / 点名:每行一个名字,还能用「名字,权重」的写法按概率加权抽取,设定人数与是否去重,适合年会抽奖、课堂点名、随机分组。
默认情况下,所有随机都基于浏览器原生的 crypto.getRandomValues 密码学安全随机源,并做了去偏处理,保证不偏向任何数值或名字,公平可信、不可预测。如果你需要结果可复现——例如教学演示、实验留痕或事后复核,可勾选「可复现(种子)」并填入种子,工具会改用自实现的可种子伪随机算法(xmur3 + mulberry32),相同种子与相同参数将得到完全一致的结果。整个过程都在你的设备本地运行,名单不会上传到任何服务器,结果支持一键复制,方便记录和公示。
使用方法
- 随机数:设置最小值、最大值、数量与小数位,可选「不重复」,点击生成。
- 骰子:设置骰子数与面数(默认 6 面),点击掷骰,显示每颗点数与合计。
- 洗牌:每行一个条目,点击洗牌得到随机排列;抽奖/点名支持「名字,权重」按权重抽取并可去重。
- 需要可复现结果时,勾选「可复现(种子)」并填入种子,相同种子与参数会得到完全相同的结果。
- 所有结果均可一键复制。
常见问题
- 随机结果公平吗?
- 公平。默认使用浏览器原生的 crypto.getRandomValues 密码学安全随机源,并对取整做了去偏处理,不偏向任何数值或名字。
- 「种子复现」是怎么实现的?
- 勾选种子后,工具改用自实现的可种子伪随机算法(xmur3 播种 + mulberry32),相同种子与相同参数会生成完全一致的序列,便于实验复现、教学演示或对结果留痕复核;不勾选则用密码学随机源,不可预测。
- 加权抽取怎么用?
- 在名单里用「名字,权重」的形式写明权重(如「李四,3」),权重越大被抽中的概率越高;未写权重默认为 1。可与「不重复中奖」叠加,每抽出一人后自动从池中移除并重新归一化。
- “不重复”是什么意思?
- 开启后同一次生成/抽取中不会出现重复值。注意:要求的数量不能超过可选范围或名单人数,否则无法满足去重;生成小数时不重复选项不适用。
- 会上传名单吗?可以用于正式抽奖吗?
- 不会,所有随机与抽取都在浏览器本地完成,名单不会上传。可用于一般活动抽奖、点名、分组等;若用于有法律效力或大额奖励的正式抽奖,建议配合种子留痕、可公示、可复核的流程以增强公信力。