当前位置:首页 > JavaScript

js 实现uuid

2026-04-05 19:52:00JavaScript

生成 UUID 的方法

使用 crypto.randomUUID()

现代浏览器支持 crypto.randomUUID() 方法,直接生成符合 RFC 4122 标准的 UUID v4:

const uuid = crypto.randomUUID();
console.log(uuid); // 输出类似 "d1a3e5f7-9b8c-4d2e-a6f0-3c7b9e8d2a1f"

使用第三方库 uuid

安装 uuid 库(Node.js 或浏览器环境均可):

npm install uuid

代码示例:

import { v4 as uuidv4 } from 'uuid';
const uuid = uuidv4(); // 生成 UUID v4
console.log(uuid);

手动实现 UUID v4

以下是一个简单的 UUID v4 生成函数:

function generateUUID() {
    return 'xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx'.replace(/[xy]/g, function(c) {
        const r = Math.random() * 16 | 0;
        const v = c === 'x' ? r : (r & 0x3 | 0x8);
        return v.toString(16);
    });
}

const uuid = generateUUID();
console.log(uuid);

使用 URL.createObjectURL

浏览器环境中可利用 URL.createObjectURL 生成唯一标识符(非标准 UUID):

js 实现uuid

const uuid = URL.createObjectURL(new Blob()).split('/').pop();
console.log(uuid); // 输出类似 "blob:http://origin/550e8400-e29b-41d4-a716-446655440000"

注意事项

  • crypto.randomUUID() 是原生 API,性能最佳且符合标准。
  • 手动实现的 UUID 可能不符合严格的 RFC 4122 规范,适用于简单场景。
  • 生产环境推荐使用 uuid 库,支持多种 UUID 版本和跨平台兼容性。

标签: jsuuid
分享给朋友:

相关文章

js实现文件下载

js实现文件下载

使用 a 标签下载文件 通过动态创建 a 标签并设置 download 属性实现文件下载。适用于已知文件 URL 或 Blob 数据的情况。 function downloadFile(url, f…

js实现pdf在线预览

js实现pdf在线预览

使用PDF.js实现PDF在线预览 PDF.js是由Mozilla开发的一个开源JavaScript库,可以在网页中直接渲染PDF文件。以下是实现PDF在线预览的步骤: 引入PDF.js库 在HT…

js实现tab选项卡切换

js实现tab选项卡切换

实现Tab选项卡切换的JavaScript方法 使用纯JavaScript实现Tab切换功能,可以通过监听点击事件动态切换内容显示状态。以下是两种常见实现方式: 基础DOM操作实现 /…

js实现抽奖

js实现抽奖

实现抽奖功能的基本思路 抽奖功能的核心是随机选择奖项并展示结果。可以通过数组存储奖项,利用随机数生成索引,最后通过动画增强用户体验。 准备奖项数据 定义一个数组存储奖项信息,每个奖项可以包含名称、图…

js实现代码雨

js实现代码雨

实现代码雨效果 使用HTML5 Canvas和JavaScript可以轻松实现经典的代码雨效果。以下是完整的实现代码和说明: HTML结构 <!DOCTYPE html> <htm…

js实现文字滚动

js实现文字滚动

实现文字滚动的几种方法 使用CSS动画实现滚动 通过CSS的@keyframes和transform属性可以实现平滑的文字滚动效果。 <style> .scroll-text { w…