js中如何产生uuid

UUID(Universally Unique IDentifier) 全局唯一标识符。
UUID是一种由算法生成的二进制长度为128位的数字标识符。UUID
的格式为“xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx”,其中的 x 是 0-9 或 a-f
范围内的一个32位十六进制数。在理想情况下,任何计算机和计算机集群都不会生成两个相同的UUID。

UUID的总数达到了2128(3.4×1038)个,所以随机生成两个相同UUID的可能性非常小,但并不为0。

算法如下:
function uuid() {
var s = [];
var hexDigits = "0123456789abcdef";
for (var i = 0; i < 36; i++) {
s[i] = hexDigits.substr(Math.floor(Math.random() * 0x10), 1);
}
s[14] = "4"; // bits 12-15 of the time_hi_and_version field to 0010
s[19] = hexDigits.substr((s[19] & 0x3) | 0x8, 1); // bits 6-7 of the clock_seq_hi_and_reserved to 01
s[8] = s[13] = s[18] = s[23] = "-";

var uuid = s.join("");
return uuid;

}

参考:
https://zhidao.baidu.com/question/982186236825180539.html

你可能感兴趣的:(js中如何产生uuid)