js动态生成唯一id

一. 引入时间戳,生成可控长度的随机数

  1. 随机数长度控制,定义一个长度变量(length),生成可控长度的随机数:
    Math.random().toString(36).substr(3,length)
  2. 引入时间戳:
    Date.now().toString(36)
  3. 合在一起最终办法:
genID(length){
   return Number(Math.random().toString().substr(3,length) + Date.now()).toString(36);
}

二. JS 生成随机

如:07854BB7-6572-496E-918B-81115BCF396E

  getUuid () {
    var s = [];
    var hexDigits = "0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ"
    for (var i = 0; i < 36; i++) {
      s[i] = hexDigits.substr(Math.floor(Math.random() * 0x10), 1)
    }
    s[14] = "4"
    s[19] = hexDigits.substr((s[19] & 0x3) | 0x8, 1)
    s[8] = s[13] = s[18] = s[23] = "-"
    let uuid = s.join("")
    return uuid
  }
posted @ 2023-01-10 14:12  未月廿三  阅读(281)  评论(0编辑  收藏  举报