序列号生成器
生成器所有处理都在浏览器本地完成,数据不上传服务器
两种模式,两种编号:顺序号(订单号、学号、批次号、资产编号,凡是「一段固定文字 + 一串递增数字」)和随机密钥(`XXXX-XXXX-XXXX-XXXX` 这样的许可证、激活码、兑换码)。 补零位数是必需的一项,不是好看而已。 流水号几乎总要定宽(`ORD-0001` 而不是 `ORD-1`),原因是排序:按字符串排序时 `ORD-10` 会排在 `ORD-2` 前面。位宽给多少取决于这批一共有多少个号(最多一千个就该补到 4 位),而那只有你知道 —— 所以默认给 4 位,覆盖到 9999 个。 随机密钥用三个占位符写模式:`X` 出字母或数字、`A` 只出字母、`N` 只出数字(大小写都认,手写 `xxxx-xxxx` 和小写一样有效),其余字符(减号、括号、空格)原样保留。所以 `XXX-NNNN-AAA` 这种混合写法也照样能出。密钥的字符集刻意去掉了 `0`、`O`、`1`、`I`、`L` —— 这类串会被人从邮件里抄下来、在电话里念出来、打进一个没有复制按钮的输入框,看混一位的代价比多几个字符大得多。 分隔方式也是选项,因为它决定你能不能直接粘走:粘进表格要换行、粘进一句话要逗号、粘进命令行要空格。生成完再自己去替换,等于把这个工具做了一半。 负数不补零:`String(-1).padStart(4, '0')` 会给出 `00-1`,负号跑到数字中间,所以补零前先判符号。
功能
- 两种模式:顺序流水号,或按模式随机的许可证密钥
- 前缀与后缀自己填(订单号、学号、批次号的前后固定部分)
- 密钥模式支持 `X` 字母数字、`A` 仅字母、`N` 仅数字三种占位符,可混用
- 起始值与步长可调,步长可以为负(倒着编号)
- 补零位数可设,0 表示不补;默认 4 位;负数不补零,不会出现 `00-1` 这种坏结果
- 密钥字符集剔除 `0 O 1 I L`,抄写与口述不会看混,且用拒绝采样保证每个字符等概率
- 一次最多 5000 个
- 输出按换行、空格或逗号分隔,粘进表格、正文或命令行都不用再替换
- 改任一参数结果立刻跟着变
- 全程在浏览器本地计算,不请求任何接口 —— 生成的编号不会出现在别人的日志里
使用方法
- 选生成方式:顺序号,或随机密钥
- 顺序号:填前缀后缀、起始值、步长与补零位数
- 随机密钥:写模式(如 `XXXX-XXXX-XXXX-XXXX`),需要的话加上前后缀
- 设置生成个数与分隔方式
- 点「复制」取走这一批
常见问题
- 为什么一定要补零?
- 因为字符串排序。`ORD-1`、`ORD-10`、`ORD-2` 这样一张列表,按字典序排出来是 `ORD-1`、`ORD-10`、`ORD-2` —— 十号排在了二号前面,看起来就像数据错了。补到 4 位之后(`ORD-0001`…`ORD-0010`),字符串顺序与数值顺序一致,排序、比较、去重全都正常。数据库里存成字符串的编号尤其要注意这一点。
- 生成的密钥能直接当产品许可证用吗?
- 能生成,但校验和发放要你自己做。这个工具只负责掷出不可预测的字符串,它不联网、也不记录任何东西 —— 这正是它适合做密钥的原因(生成出来的密钥不会出现在别人的日志里)。需要留意两点:一是 16 位的 `XXXX-XXXX-XXXX-XXXX` 约有 78 位熵,作为密钥是够的,但模式里占位符太少就不够(`NNNN` 只有一万种可能);二是密钥泄露之后无法吊销,所以真正发放时应当把它和一份服务端的白名单对应起来。
- 为什么密钥里没有 0、O、1、I、L?
- 因为人是会抄错的。这类串的典型生命周期是复制到邮件里、在电话里念一遍、再打进一个不允许粘贴的输入框 —— 而 `0/O` 和 `1/I/L` 在这三个环节里都会看混。少掉这 5 个字符,字母表从 36 降到 31,每个字符的熵只少了一点点(约 0.2 位),但客服工单会少很多。这与短 ID、一次性密码用的是同一条理由。
- 能生成带日期的流水号吗?
- 把日期写进前缀即可,例如前缀填 `2026-0927-`,后面的序号照常递增。工具没有做 `{date}` 这类占位符,是因为那样每次生成的结果都会随当天日期变 —— 一个「同样的参数、同样的结果」的生成器更容易核对,需要换日期时改一下前缀就行。
- 一次最多能生成多少个?
- 5000 个。这是一个刻意的上限:再多的话,结果区与复制的内容都会大到难以使用,而这个工具的场景(一批工号、一批资产编号)本来就到不了那个量级。要生成更多,把起始值调到上一批的末尾再点一次即可。
相关工具
UUID 生成
生成器一次生成一整列 UUID v4、v7、ULID、NanoID 或 MongoDB ObjectId,每行一条,可直接粘进表格或脚本。随机数取自浏览器加密接口,不联网、不记录。
行序号
文本给每行批量加序号或去掉行首编号。编号写法六种、起始值与步长可调、可补零,空行还能不占号。
模拟数据
生成器按「字段名:类型」写几行字段,就能得到一整批格式逼真的模拟数据,可导出 JSON、CSV、TSV、SQL、XML、YAML 或 TOML。
占位文本
生成器生成占位文本,可选拉丁文 Lorem ipsum、英文句子、中文或日文填充句,按段落、句子或单词输出。全部在浏览器本地生成,不联网。
二维码
生成器把文本、链接、WiFi 配置、名片、日历事件生成二维码,前景与背景色可调,可下载 PNG 或矢量 SVG。编码全程在浏览器本地完成。
密码生成
生成器生成随机强密码,长度与字符集可调,并实时给出熵值,让「强度」变成一个可以比较的数字。密码只在本机内存里,不记录也不上传。