create UUID

2017-11-30  本文已影响0人  angi_uan

//生成UUID算法

//算法 一

functionuuid(len,radix) {

varchars='0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz'.split('');

varuuid=[],

i;

radix=radix||chars.length;

if(len) {

for(i=0;i

}else{

varr;

uuid[8]=uuid[13]=uuid[18]=uuid[23]='-';

uuid[14]='4';

for(i=0;i<36;i++) {

if(!uuid[i]) {

r=0|Math.random()*16;

uuid[i]=chars[(i==19)?(r&0x3)|0x8:r];

}

}

}

returnuuid.join('');

}

//算法 二

generateUUID: (function() {

varchars='0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz'.split('');

varuuid=newArray(36);

varrnd=0,

r;

returnfunction() {

for(vari=0;i<36;i++) {

if(i==8||i==13||i==18||i==23) {

uuid[i]='-';

}elseif(i==14) {

uuid[i]='4';

}else{

if(rnd<=0x02)rnd=0x2000000+(Math.random()*0x1000000)|0;

r=rnd&0xf;

rnd=rnd>>4;

uuid[i]=chars[(i==19)?(r&0x3)|0x8:r];

}

}

returnuuid.join('');//返回36位的uuid通用唯一识别码 (Universally Unique Identifier).

};

}())

上一篇下一篇

猜你喜欢

热点阅读