随机生成字符串

在开发过程中,随机生成字符串的需求很常见,例如:前后端进行加密需要带随机字符串等。目前我经常使用的方法是:

/**
 * 获取随机字符串
 * @param {number}} len
 */
function randomString (len) {
  len = len || 32;
  var $chars = 'ABCDEFGHJKMNPQRSTWXYZabcdefhijkmnprstwxyz2345678'; /** **默认去掉了容易混淆的字符oOLl,9gq,Vv,Uu,I1****/
  var maxPos = $chars.length;
  var pwd = '';
  for (let i = 0; i < len; i++) {
    pwd += $chars.charAt(Math.floor(Math.random() * maxPos));
  }
  return pwd;
}

Math.random()获取0~1之间的随机数(包括0,不包括1)
Math.floor() 向下进行取舍,Math.floor(12.3) // 12
charAt() 方法可返回指定位置的字符。
可以传入生成随机字符串的长度数,主要是这个思路。

上一篇:JS求随机数 Math.floor(Math.random() * (max - min + 1)) + min 理解


下一篇:C# 线性渐变圆