JS简单生成由字母数字组合随机字符串示例


Posted in Javascript onMay 25, 2018

本文实例讲述了JS简单生成由字母数字组合随机字符串。分享给大家供大家参考,具体如下:

前言

最近有个需求,是需要生成3-32位长度的字母数字组合的随机字符串,另一个是生成43位随机字符串。

方法一

奇妙的写法

Math.random().toString(36).substr(2);

输出结果

JS简单生成由字母数字组合随机字符串示例

解释

很有意思,研究了一下,基本上toString后的参数规定可以是2-36之间的任意整数,不写的话默认是10(也就是十进制),此时返回的值就是那个随机数。

若是偶数,返回的数值字符串都是短的,若是奇数,则返回的将是一个很大长度的表示值。
若<10 则都是数字组成,>10 才会包含字母。

所以如果想得到一长串的随机字符,则需使用一个 > 10 且是奇数的参数,另外根据长度自行使用slice(2,n)截取!

方法二

这个倒是有很多的实现方法,由于上一种写法不太符合需求所以写了下一种,欢迎拍砖。

代码

/*
** randomWord 产生任意长度随机字母数字组合
** randomFlag-是否任意长度 min-任意长度最小位[固定位数] max-任意长度最大位
** xuanfeng 2014-08-28
*/
function randomWord(randomFlag, min, max){
  var str = "",
    range = min,
    arr = ['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', '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'];
  // 随机产生
  if(randomFlag){
    range = Math.round(Math.random() * (max-min)) + min;
  }
  for(var i=0; i<range; i++){
    pos = Math.round(Math.random() * (arr.length-1));
    str += arr[pos];
  }
  return str;
}

使用方法

生成3-32位随机串:randomWord(true, 3, 32)
生成43位随机串:randomWord(false, 43)

JS简单生成由字母数字组合随机字符串示例

Javascript 相关文章推荐
动态的改变IFrame的高度实现IFrame自动伸展适应高度
Dec 28 Javascript
javascript实现网页字符定位的方法
Jul 14 Javascript
javascript实现在线客服效果
Jul 15 Javascript
原生javascript实现图片放大镜效果
Jan 18 Javascript
简单谈谈关于Angular Cli打包的事
Sep 05 Javascript
javascript 作用于作用域链的详解
Sep 27 Javascript
C#实现将一个字符转换为整数
Dec 12 Javascript
angularJS的radio实现单项二选一的使用方法
Feb 28 Javascript
React学习笔记之高阶组件应用
Jun 02 Javascript
vue异步axios获取的数据渲染到页面的方法
Aug 09 Javascript
JS获取并处理php数组的方法实例分析
Sep 04 Javascript
BootStrap table实现表格行拖拽效果
Dec 01 Javascript
Webpack中雪碧图插件使用详解
May 25 #Javascript
使用javascript做在线算法编程
May 25 #Javascript
JS实现的汉字与Unicode码相互转化功能分析
May 25 #Javascript
浅析node.js的模块加载机制
May 25 #Javascript
webpack4的迁移的使用方法
May 25 #Javascript
最后说说Vue2 SSR 的 Cookies 问题
May 25 #Javascript
详解webpack4多入口、多页面项目构建案例
May 25 #Javascript
You might like
php判断正常访问和外部访问的示例
2014/02/10 PHP
laravel 获取当前url的别名方法
2019/10/11 PHP
laravel 解决crontab不执行的问题
2019/10/22 PHP
javascript下操作css的float属性的特殊写法
2007/08/22 Javascript
解决用jquery load加载页面到div时,不执行页面js的问题
2014/02/22 Javascript
微信小程序 引用其他js文件实现代码
2017/02/22 Javascript
vue-resourse将json数据输出实例
2017/03/08 Javascript
uploader秒传图片到服务器完整代码
2017/04/22 Javascript
layui结合form,table的全选、反选v1.0示例讲解
2018/08/15 Javascript
vuejs实现ready函数加载完之后执行某个函数的方法
2018/08/31 Javascript
灵活使用console让js调试更简单的方法步骤
2019/04/23 Javascript
使用 js 简单的实现 bind、call 、aplly代码实例
2019/09/07 Javascript
vue 自定义右键样式的实例代码
2019/11/06 Javascript
微信小程序实现音乐播放器
2019/11/20 Javascript
详解Node.js使用token进行认证的简单示例
2020/05/25 Javascript
基于canvasJS在PHP中制作动态图表
2020/05/30 Javascript
vue2.0实现列表数据增加和删除
2020/06/17 Javascript
python str与repr的区别
2013/03/23 Python
黑科技 Python脚本帮你找出微信上删除你好友的人
2016/01/07 Python
使用Python的Twisted框架构建非阻塞下载程序的实例教程
2016/05/25 Python
Python爬虫实现抓取京东店铺信息及下载图片功能示例
2018/08/07 Python
pytorch 状态字典:state_dict使用详解
2020/01/17 Python
pytorch掉坑记录:model.eval的作用说明
2020/06/23 Python
Windows 平台做 Python 开发的最佳组合(推荐)
2020/07/27 Python
canvas实现圆形进度条动画的示例代码
2017/12/26 HTML / CSS
美国Curacao百货连锁店网站:iCuracao.com
2019/07/20 全球购物
Nip + Fab官网:英国美容品牌
2019/08/26 全球购物
物流经理自我评价
2013/09/23 职场文书
工厂会计员职责
2014/02/06 职场文书
2014年医院十一国庆节活动方案
2014/09/15 职场文书
校车安全管理责任书
2015/05/11 职场文书
2015迎新晚会活动总结
2015/07/16 职场文书
在酒桌上的敬酒词
2015/08/12 职场文书
《小摄影师》教学反思
2016/02/18 职场文书
导游词之澳门妈祖庙
2019/12/19 职场文书
Python爬取用户观影数据并分析用户与电影之间的隐藏信息!
2021/06/29 Python