UUID / ULID / NanoID 生成器一键生成 UUID v4、UUID v7、ULID 和 NanoID,在浏览器本地即时完成。
生成结果
你的 ID 会通过浏览器内置的 Web Crypto API 在本地生成,不会发送到 BroBroGo。
常见问题
UUID v4、UUID v7、ULID 和 NanoID 有什么区别?
UUID v4 是 122 位纯随机数,采用大家熟悉的 36 位字符格式,但顺序完全随机,对数据库索引不太友好。UUID v7 保留同样的格式,但开头带毫秒级时间戳,生成顺序大致按创建时间排列,很适合做主键。ULID 用同样的时间优先思路,编码成更短、不区分大小写的 26 位字符串。NanoID 完全放弃排序,换来更短、可自由定制长度和字符集的 ID。
这些 ID 够随机、猜不出来吗?
够。每个 ID 都是通过浏览器的 Web Crypto API(crypto.getRandomValues)生成的,和生成密钥用的随机源一致,而不是 Math.random()。UUID v4 和 NanoID 默认字符集的随机性都远超 100 位。UUID v7 和 ULID 会拿出大约 48 位随机性换成开头的时间戳,所以这两种格式适合当作可排序的 ID,不适合当作密钥使用。
NanoID 的长度和字符集能自定义吗?
可以。切换到 NanoID 模式后,这里会出现长度滑块(默认 21 位,和官方库一致)和可编辑的字符集输入框。缩短长度或收窄字符集都会降低抗碰撞能力,字符集越窄就越该把长度调高一些。