js用时间戳生成最安全的唯一id


// 基于base62编码生成14位的ID字符串
// 优点:短/按时间序/双击可全选/唯一性足够安全
function getId() {// 基于base62编码生成14位的ID字符串
// 优点:短/按时间序/双击可全选/唯一性足够安全
function getId() {
  var ret = ''
  var ms = (new Date()).getTime()
  ret += base62encode(ms, 8) // 6923年循环一次
  ret += base62encode(Math.ceil(Math.random() * (62**6)), 6) // 冲突概率为每毫秒568亿分之一
  return ret
}
let codeStr = "0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz"
function base62encode(v, n){
  var ret = ""
  for(var i=0;i<n;i++){
    ret = codeStr[v%codeStr.length] + ret
    v = Math.floor(v/codeStr.length)
  }
  return ret
}
  var ret = ''
  var ms = (new Date()).getTime()
  ret += base62encode(ms, 8) // 6923年循环一次
  ret += base62encode(Math.ceil(Math.random() * (62**6)), 6) // 冲突概率为每毫秒568亿分之一
  return ret
}
let codeStr = "0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz"
function base62encode(v, n){
  var ret = ""
  for(var i=0;i<n;i++){
    ret = codeStr[v%codeStr.length] + ret
    v = Math.floor(v/codeStr.length)
  }
  return ret
}
0

评论

暂无评论

【js用时间戳生成最安全的唯一id隶属于分类: JavaScript

它起初由本站用户:于高鹏于1年前 创建。

该内容的链接是:

目录