Skip to main content
On this page

@std/uuid

概述 Jump to heading

适用于RFC 9562 UUID 的生成器和验证器,支持版本 v1、v3、v4、v5、v6 和 v7。

如果您只需生成 v4 UUID,请使用内置的 crypto.randomUUID() 函数,而不是使用此包。

基于 npm:uuid

import { NAMESPACE_DNS, NIL_UUID, v5 } from "@std/uuid";
import { assert, assertFalse } from "@std/assert";

const data = new TextEncoder().encode("deno.land");
const uuid = await v5.generate(NAMESPACE_DNS, data);

assert(v5.validate(uuid));
assertFalse(v5.validate(NIL_UUID));

添加到您的项目中 Jump to heading

deno add jsr:@std/uuid

查看 @std/uuid 中的所有符号

什么是 UUID? Jump to heading

UUID(通用唯一标识符)是一个 128 位的标识符,用于在计算机系统中唯一标识信息。UUID 设计为全球唯一,意味着即使在不同系统中独立生成两个 UUID,其相同的概率也极低。这使得 UUID 在数据库键、会话标识符和分布式计算等需要唯一标识的应用场景中非常有用。

为什么使用 @std/uuid? Jump to heading

用于跨版本(v1、v3、v4、v5、v6、v7)生成或验证 UUID。如果您只需要生成 v4,建议优先使用内置的 crypto.randomUUID()

示例 Jump to heading

import { v4 } from "@std/uuid";

const id = v4.generate();
console.log(v4.validate(id)); // true

提示 Jump to heading

  • 命名空间 ID:使用 v3/v5 生成基于名称 + 命名空间的确定性 ID。
  • 时间有序 ID:考虑使用 v6/v7 以获得更好的索引局部性。

你找到了你需要的东西吗?

编辑此页面
隐私政策