如何生成一个36位的UUID?

如何生成一个36位的UUID?

HarmonyOS
2024-08-06 16:16:27
浏览
收藏 0
回答 1
待解决
回答 1
按赞同
/
按时间
退休的程序员
/**
 * 生成36位UUID,带-
 */
static generateUUID36(): string {
  const chars = '0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz'.split('');
  const uuid = new Array<string>(36);
  let rand = 0;
  for (let i = 0; i < 36; i++) {
    if (i === 8 || i === 13 || i === 18 || i === 23) {
      uuid[i] = '-';
    } else if (i === 14) {
      uuid[i] = '4';
    } else {
      if (rand <= 0x02) {
        rand = 0x2000000 + (Math.random() * 0x1000000) | 0;
      }
      const r = rand & 0xf;
      rand = rand >> 4;
      uuid[i] = chars[(i === 19) ? (r & 0x3) | 0x8 : r];
    }
  }
  return uuid.join('');
}
分享
微博
QQ
微信
回复
2024-08-06 21:36:54
相关问题
如何生成一个32UUID
120浏览 • 1回复 待解决
如何随机生成一个汉字?
121浏览 • 1回复 待解决
如何生成一个可以交互移动子窗口
494浏览 • 1回复 待解决
如何生成UUID字符串
1887浏览 • 1回复 待解决
ArkTS 如何生成如下 uuid呢?
584浏览 • 1回复 待解决
如何生成随机uuid,有哪位知道啊?
1736浏览 • 1回复 待解决
如何生成一个十六进制颜色色值?
109浏览 • 1回复 待解决
有谁知道如何生成UUID
1383浏览 • 1回复 待解决
如何通过uuid生成、md5、RSA、AES、 DES
1620浏览 • 1回复 待解决
如何创建一个window?
99浏览 • 1回复 待解决
如何实现一个带动画弹窗?
169浏览 • 1回复 待解决
如何展示一个激励广告
117浏览 • 1回复 待解决
如何展示一个banner广告
135浏览 • 1回复 待解决
如何展示一个插屏广告
129浏览 • 1回复 待解决
如何设置一个通知按钮
127浏览 • 1回复 待解决
如何展示一个开屏广告
151浏览 • 1回复 待解决
如何定义一个未知类型对象
470浏览 • 2回复 待解决