项目中经常使用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以及参考网上资料,若有不足之处,请原谅。