random.js 1.2 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849
  1. /*
  2. graceUI-JS - 随机数
  3. link : graceui.hcoder.net
  4. author : 5213606@qq.com 深海
  5. 版权声明 :
  6. GraceUI 的版权约束是不能转售或者将 GraceUI 直接发布到公开渠道!
  7. 侵权必究,请遵守版权约定!
  8. */
  9. module.exports = {
  10. // 生成2数之间的随机数
  11. random : function(min, max){
  12. switch(arguments.length){
  13. case 1:
  14. return parseInt(Math.random() * min + 1,10);
  15. break;
  16. case 2:
  17. return parseInt(Math.random() * (max - min + 1 ) + min, 10);
  18. break;
  19. default:
  20. return 0;
  21. break;
  22. }
  23. },
  24. // UUID
  25. uuid : function(len, radix){
  26. var chars = '0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz'.split('');
  27. var uuid = [], i;
  28. radix = radix || chars.length;
  29. if(len){
  30. for (i = 0; i < len; i++){
  31. uuid[i] = chars[0 | Math.random() * radix];
  32. }
  33. }else{
  34. var r;
  35. uuid[8] = uuid[13] = uuid[18] = uuid[23] = '-';
  36. uuid[14] = '4';
  37. for(i = 0; i < 36; i++){
  38. if (!uuid[i]){
  39. r = 0 | Math.random() * 16;
  40. uuid[i] = chars[(i == 19) ? (r & 0x3) | 0x8 : r];
  41. }
  42. }
  43. }
  44. return uuid.join('');
  45. }
  46. }