JS生成随机数/随机字符串的5种方法

 木柚村村长   2021-01-03 21:19   414 人阅读  0 条评论


1、第一种:使用randomString,e表示长度,默认32位

function randomString(e) {  
  var e = e || 32,
  t = "ABCDEFGHJKMNPQRSTWXYZabcdefhijkmnprstwxyz2345678",
  a = t.length,
  n = "";  for (i = 0; i < e; i++) n += t.charAt(Math.floor(Math.random() * a));  return n
}
randomString(6);

2、生成随机数:

  原理是随机数和最大值减最小值的差相乘,最后再加上最小值

// 代表生成100000-999999的随机数function GetRandomNum(Min,Max){    var Range = Max - Min;    var Rand = Math.random();    return (Min + Math.round(Rand * Range));
}
GetRandomNum(10000,999999);

3、对定义的数组字符集进行随机选取

var str = ['0','1','2','3','4','5','6','7','8','9','A','B','C','D','E','F','G','H','I','J','K','L','M','N','O','P','Q','R','S','T','U','V','W','X','Y','Z'];
function generateMixed(n) {   var res = "";   for(var i = 0; i < n ; i ++) {     var id = Math.ceil(Math.random()*35);
     res += str[id];
   }   return res;
}
generateMixed(6);

4、生成随机数转成36进制,再截取部分

//Math.random() 生成随机数字, eg: 0.123456//.toString(36) 转化成36进制 : "0.4fzyo82mvyr"//.slice(-8); 截取最后八位 : "yo82mvyr"var str = Math.random().toString(36).slice(-6);


5、对字符串集合随机排列,随机输出指定的长度

function randomString(length) {  var str = '0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ';  var result = '';  for (var i = length; i > 0; --i) {
    result += str[Math.floor(Math.random() * str.length)]; }
 return result;
}
randomString(6);


本文地址:https://www.muui.cn/index.php/post/206.html
版权声明:本文为原创文章,版权归 木柚村村长 所有,欢迎分享本文,转载请保留出处!

 发表评论


表情

还没有留言,还不快点抢沙发?