UUID 生成

批量 v4 与时间可排序 v7,随机源用 CSPRNG。

保留连字符大写
结果

UUID 是 128 位标识符,标准写法形如 8-4-4-4-12 的十六进制串。本页生成 RFC 9562(取代旧的 RFC 4122)定义的 v4(纯随机)与 v7(毫秒时间戳打头,天然有序),随机数来自 crypto.getRandomValues,也就是操作系统的密码学随机源,不是 Math.random。

版本只有 v4 与 v7,标准里的其他形式(例如全零的 Nil UUID)本页不生成。v7 在同一毫秒内用递增计数器保证顺序,也正因前 48 位就是 Unix 毫秒时间戳,它可预测,不适合用在编号会被枚举的场景(例如公开订单号)。

UUID 生成怎么用

  • 批量生成:数量 1 到 100,每次点「重新生成」都会取一批新的随机值。
  • 格式开关:可以关闭连字符得到 32 位紧凑串,或转成大写;RFC 对大小写不敏感。
  • v7 时间有序:需要按插入顺序索引友好时选 v7,前 12 位十六进制就是毫秒时间戳,适合做数据库主键以避免索引页分裂。

常见问题

UUID 会撞车吗?

v4 有 122 位随机位,按生日悖论要生成约 26 亿个才有十亿分之一的碰撞概率,实际业务里可以当作唯一。

v7 能反推创建时间吗?

能,前 48 位就是 Unix 毫秒时间戳,因此它可预测,不适合用在编号会被枚举的场景(例如公开订单号)。

为什么要求安全上下文(HTTPS)?

crypto.randomUUID 只在安全上下文可用。本地 localhost 也算安全上下文,所以开发环境同样能生成。

对应功能编号 #74无需安装,手机端同样可用按 Ctrl + K 换工具