随机与决策
范围内随机数 · 列表抽签 · 加权随机 · 随机洗牌
密码学安全随机源 · 内容不出浏览器、不记录不追踪
范围内随机数
列表抽签
一行一个条目;加权模式每行写「条目,权重」
结果(点条目可选中,「复制」按行导出)
"随机"到底靠不靠谱
真随机与可复现随机是两回事,本页两种都给。留空种子时,所有结果来自浏览器的密码学安全随机源(crypto.getRandomValues,与密码生成器同源),每次都不一样、无法预测;填入种子后切换为确定性的伪随机序列(xorshift32)——相同种子 + 相同参数永远得到相同结果。抽签被人质疑时,把种子和参数贴出来,任何人都能一键复演整个过程。
洗牌用的是 Fisher–Yates 算法。这是唯一"每种排列等概率"的经典洗牌法:从后往前,每个元素与前面(含自己)的随机位置交换。实现简单、无偏,本页的洗牌与抽签共用同一套随机源,行为一致。
边界情况不硬凑。最小值大于最大值、不重复模式下要抽的个数超过范围大小、列表为空——这些情况页面会直接说明原因,而不是偷偷改参数给你一份"看起来能用"的结果。
常见问题
随机数可靠吗?
不给种子时用浏览器密码学安全随机源 crypto.getRandomValues(与密码生成器同源);给种子则是可复现的伪随机序列(xorshift32),方便复核与重演。真正在意随机的场景(抽奖、密钥)请不要用种子。
列表抽签怎么操作?
一行一个条目粘贴进来;抽签可设抽取数量,加权模式每行写「条目,权重」两列。洗牌用 Fisher–Yates 算法,每种排列等概率,原列表顺序不改变。
种子有什么用?
种子决定伪随机序列的起点:相同种子 + 相同参数 = 完全相同的结果。抽签被人质疑时,把种子和参数贴出来即可完整复演过程;留空则用真随机、不复现。
粘贴的内容会上传吗?
不会。全部在浏览器内完成,列表内容不出本机、不写 localStorage,刷新即清空;本页没有任何上传接口。