当前位置:首页 > JavaScript

js实现guid

2026-03-15 05:37:45JavaScript

生成 GUID/UUID 的方法

在 JavaScript 中,可以使用以下方法生成 GUID(全局唯一标识符)或 UUID(通用唯一标识符):

使用 crypto.randomUUID()

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

js实现guid

const uuid = crypto.randomUUID();
console.log(uuid); // 输出类似 "1a2b3c4d-5e6f-7g8h-9i0j-1k2l3m4n5o6p"

使用第三方库

如果项目允许使用第三方库,uuid 是一个流行的选择:

js实现guid

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

自定义实现

如果需要纯 JavaScript 实现,可以使用以下函数:

function generateGuid() {
    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);
    });
}
console.log(generateGuid());

性能优化版本

对于需要更高性能的场景,可以使用以下优化版本:

function generateGuidFast() {
    return ([1e7]+-1e3+-4e3+-8e3+-1e11).replace(/[018]/g, c =>
        (c ^ crypto.getRandomValues(new Uint8Array(1))[0] & 15 >> c / 4).toString(16)
    );
}
console.log(generateGuidFast());

注意事项

  • crypto.randomUUID() 是首选方法,但需要现代浏览器支持
  • 自定义实现可能不完全符合 RFC 4122 标准
  • 在 Node.js 环境中可以使用 require('crypto').randomUUID()

标签: jsguid
分享给朋友:

相关文章

js实现轮播

js实现轮播

实现基础轮播效果 使用HTML结构创建轮播容器和图片元素: <div class="carousel"> <div class="carousel-inner">…

js实现跳转

js实现跳转

使用 window.location 跳转 通过修改 window.location.href 实现页面跳转,这是最常用的方法。 window.location.href = 'https://…

js实现动画

js实现动画

使用 CSS 动画与 JavaScript 控制 通过 JavaScript 动态添加或移除 CSS 类来触发动画。CSS 定义关键帧(@keyframes),JavaScript 通过 classL…

js实现分页

js实现分页

分页的基本实现思路 在JavaScript中实现分页功能通常需要结合前端和后端逻辑。前端负责渲染分页控件和处理用户交互,后端负责提供分页数据。 前端分页实现 纯前端分页适用于数据量较小的情况,可以直…

js轮播图实现原理

js轮播图实现原理

轮播图的基本原理 轮播图通过动态切换显示的内容(图片、文本等)实现视觉上的滑动效果。核心原理是利用CSS和JavaScript控制元素的显示与隐藏,或通过变换位置实现滑动动画。 实现方法一:CSS…

js实现自举

js实现自举

实现 JavaScript 自举的方法 JavaScript 自举(Bootstrap)通常指通过 JavaScript 动态加载自身或依赖的脚本,实现运行时环境的初始化或扩展。以下是几种常见实现方式…