随机抽奖工具
名单随机抽取、随机排序、多轮不重复,支持按权重抽取,浏览器本地完成。
使用指南
- 粘名单
一行一个名字,空行会被自动忽略,重复的名字算两个独立候选。
- 选模式
抽一人或数人用「随机抽取」,打乱顺序用「随机排序」,多轮不重复用「多轮不重复」。
- 需要权重时
勾上「按权重抽取」,每行改成「名字 权重」,权重是整数,数字越小越难被抽中。
常见问题
这样抽出来公平吗?
公平。随机数来自 crypto.getRandomValues 这个密码学安全随机源,并且做了拒绝采样消除取模偏差,所以每个候选被抽中的概率严格相等——不是「差不多相等」,而是数学上相等。权重模式下概率与权重成正比,这是另一回事。
为什么不能在不重抽的情况下保证不重复?
「多轮不重复」模式会把已抽中的人从池子里移除,后续轮次只在剩下的人里抽,这样多轮下来不会有人重复中选。但如果你要求一次性抽出若干互不重复的人并保证「均匀」,那在数学上做不到同时满足所有排列等概率,只能退一步让每个组合等概率——工具用的是前者,抽中的人直接移出候选池。
权重可以是小数吗?
目前只支持整数权重,因为权重会累加成一个整数区间再取随机数,小数会引入浮点误差。1 比 50 这样的比例已经够用了。
名单会泄露吗?
不会。抽取在浏览器本地完成,没有任何网络请求。把名单粘进去再断网,功能完全一样。