uuid原理及使用例子

项目中经常使用UUID做为惟一标识码git

 UUID是128位整数(16字节)的全局惟一标识符github

 

由如下几部分的组合:npm

当前日期和时间(UUID的第一个部分与时间有关,若是你在生成一个UUID以后,过几秒又生成一个UUID,则第一个部分不一样,其他相同),ui

时钟序列,spa

全局惟一的IEEE机器识别号(若是有网卡,从网卡得到,没有网卡以其余方式得到),code

UUID的惟一缺陷在于生成的结果串会比较长。blog

 

UUID是一个由4个连字号(-)将32个字节长的字符串分隔后生成的字符串,总共36个字节长。好比:550e8400-e29b-41d4-a716-446655440000字符串

 

格式为:xxxxxxxx-xxxx-xxxx-xxxxxxxxxxxxxxxx(8-4-4-16),其中每一个 x 是 0-9 或 a-f 范围内的一个十六进制的数字。而标准的UUID格式为:xxxxxxxx-xxxx-xxxx-xxxxxx-xxxxxxxxxx (8-4-4-4-12)get

 

一、具体uuid的API地址:https://github.com/pnegri/uuid-jsstring

小例子代码以下:

npm install uuid

var
uuid=require('uuid'); var id = uuid.v1().replace(/-/g, ""); console.log(id);

二、uuid-js的API以下:

UUID.create(4); // Generate V4 UUID

UUID.create(1); // Generate V1 TimeUUID

UUID.fromTime(time, last); // Generate a V1 empty TimeUUID from a Date object (Ex: new Date().getTime() )

UUID.firstFromTime(time); // Same as fromTime but first sequence

UUID.lastFromTime(time); // Same as fromTime but last sequence

UUID.fromURN(strId); // Generate a UUID object from string

UUID.fromBytes(ints); // Generate a UUID object from bytes

UUID.fromBinary(binary); // Generate a UUID object from binary

 

本例子参照uuidjsAPI以及参考网上资料,若有不足之处,请原谅。

相关文章
相关标签/搜索