1. /***
    2. *
    3. * 获取请求的UUID,指定长度和进制,如
    4. * getUUID(8, 2) //"01001010" 8 character (base=2)
    5. * getUUID(8, 10) // "47473046" 8 character ID (base=10)
    6. * getUUID(8, 16) // "098F4D35" 8 character ID (base=16)
    7. *
    8. */
    9. function getUUID(len, radix) {
    10. var chars = '0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz'.split('');
    11. var uuid = [], i;
    12. radix = radix || chars.length;
    13. if (len) {
    14. for (i = 0; i < len; i++)
    15. uuid[i] = chars[0 | Math.random() * radix];
    16. } else {
    17. var r;
    18. uuid[8] = uuid[13] = uuid[18] = uuid[23] = '-';
    19. uuid[14] = '4';
    20. for (i = 0; i < 36; i++) {
    21. if (!uuid[i]) {
    22. r = 0 | Math.random() * 16;
    23. uuid[i] = chars[(i == 19) ? (r & 0x3) | 0x8 : r];
    24. }
    25. }
    26. }
    27. return uuid.join('');
    28. }
    29. getUUID(); // 标准uuid: B2D23AAC-F0AF-4B3B-AEC9-2183508950D5
    30. getUUID(8, 16); // 长度8, 进制16uuid: 2B3056FD