Laravel  
laravel
文档
数据库
架构
入门
php技术
    
Laravelphp
laravel / php / java / vue / mysql / linux / python / javascript / html / css / c++ / c#

js 生成唯一id

作者:疯狂灭世   发布日期:2025-04-25   浏览:91

// 生成唯一ID的函数
function generateUUID() {
    // Math.random() 生成一个0-1之间的随机数,再通过toString(16)转换为16进制字符串
    // slice(-12) 截取最后12位字符以确保长度
    return 'xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx'.replace(/[xy]/g, function(c) {
        var r = (Math.random() * 16) | 0,
            v = c == 'x' ? r : (r & 0x3) | 0x8;
        return v.toString(16);
    });
}

// 示例调用
console.log(generateUUID());

解释说明:

  1. generateUUID 函数:该函数用于生成一个符合 UUID(通用唯一识别码)格式的唯一 ID。
  2. 'xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx':这是一个模板字符串,其中 xy 是占位符,将被随机生成的16进制数字替换。4y 确保生成的 UUID 符合版本4的规范。
  3. replace(/[xy]/g, function(c) {...}):使用正则表达式 [xy] 匹配模板中的 xy,并用随机生成的16进制数字替换它们。
  4. Math.random():生成一个0到1之间的随机数。
  5. | 0:将浮点数转换为整数。
  6. v = c == 'x' ? r : (r & 0x3) | 0x8:根据占位符是 x 还是 y,生成不同的16进制数字,以确保符合 UUID 的规范。
  7. v.toString(16):将生成的整数转换为16进制字符串。

这个方法可以生成一个高概率唯一的 ID,适用于大多数需要唯一标识符的场景。

上一篇:js 获取对象key

下一篇:js 数字转为字符串

大家都在看

js 数组对象排序

js 数组删掉第一个值

js fill

js 数组复制

js 复制数组

js 数组拷贝

js 对象转数组

js 深拷贝数组

js 获取今天年月日

js jsonp

Laravel PHP 深圳智简公司。版权所有©2023-2043 LaravelPHP 粤ICP备2021048745号-3

Laravel 中文站