JS生成随机字符串的多种方法


Posted in Javascript onJune 10, 2014

下面的一段代码,整理电脑时,记录备查。

<script language="javascript"> 
function randomString(len) {
len = len || 32;

var $chars = 'ABCDEFGHJKMNPQRSTWXYZabcdefhijkmnprstwxyz2345678';    /****默认去掉了容易混淆的字符oOLl,9gq,Vv,Uu,I1****/

var maxPos = $chars.length;

var pwd = '';

for (i = 0; i < len; i++) {


pwd += $chars.charAt(Math.floor(Math.random() * maxPos));

}

return pwd;
}
document.write(randomString(32));
</script>

使用方法,就不用说了吧,调用randomString方法,参数len为返回的随机字符串长度。

传参就长度,如果不带参数默认输出32个字符。

JS产生随机数的几个用法!

<script>   
function GetRandomNum(Min,Max)
{   
var Range = Max - Min;   
var Rand = Math.random();   
return(Min + Math.round(Rand * Range));   
}   
var num = GetRandomNum(1,10);   
alert(num);   
</script>
var chars = ['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 += chars[id];
     }
     return res;
}

1.Math.random(); 结果为0-1间的一个随机数(包括0,不包括1)
2.Math.floor(num); 参数num为一个数值,函数结果为num的整数部分。
3.Math.round(num); 参数num为一个数值,函数结果为num四舍五入后的整数。

Math:数学对象,提供对数据的数学计算。
Math.random(); 返回0和1间(包括0,不包括1)的一个随机数。

Math.ceil(n); 返回大于等于n的最小整数。
用Math.ceil(Math.random()*10);时,主要获取1到10的随机整数,取0的几率极小。

Math.round(n); 返回n四舍五入后整数的值。
用Math.round(Math.random());可均衡获取0到1的随机整数。
用Math.round(Math.random()*10);时,可基本均衡获取0到10的随机整数,其中获取最小值0和最大值10的几率少一半。

Math.floor(n); 返回小于等于n的最大整数。
用Math.floor(Math.random()*10);时,可均衡获取0到9的随机整数。

js生成随机字符串+时间戳获取

默认JS生成的是13位,传给php需要 /1000

timestamp = timestamp/1000;
<script type="text/javascript">
function  randomChar(l)  {
var  x="0123456789qwertyuioplkjhgfdsazxcvbnm";
var  tmp="";
var timestamp = new Date().getTime();
for(var  i=0;i<  l;i++)  {
tmp  +=  x.charAt(Math.ceil(Math.random()*100000000)%x.length);
}
return  timestamp+tmp;
Javascript 相关文章推荐
JS 中document.URL 和 windows.location.href 的区别
Nov 11 Javascript
Chosen 基于jquery的选择框插件使用方法
May 30 Javascript
Jquery倒数计时按钮setTimeout的实例代码
Jul 04 Javascript
javascript类型转换使用方法
Feb 08 Javascript
jquery常用操作小结
Jul 21 Javascript
JS倒计时代码汇总
Nov 25 Javascript
Javascript与jQuery方法的隐藏与显示
Jan 19 Javascript
jquery滚动特效集锦
Jun 03 Javascript
js图片轮播效果实现代码
Apr 18 Javascript
Vue.js学习笔记之常用模板语法详解
Jul 25 Javascript
浅析为什么a=&quot;abc&quot; 不等于 a=new String(&quot;abc&quot;)
Oct 25 Javascript
vue-router中的hash和history两种模式的区别
Jul 17 Javascript
json中换行符的处理方法示例介绍
Jun 10 #Javascript
Jquery焦点与失去焦点示例应用
Jun 10 #Javascript
浅析基于WEB前端页面的页面内容搜索的实现思路
Jun 10 #Javascript
JavaScript中统计Textarea字数并提示还能输入的字符
Jun 10 #Javascript
iframe里的页面禁止右键事件的方法
Jun 10 #Javascript
js类定义函数时用prototype与不用的区别示例介绍
Jun 10 #Javascript
深入探讨JavaScript、JQuery屏蔽网页鼠标右键菜单及禁止选择复制
Jun 10 #Javascript
You might like
php获取当前网址url并替换参数或网址的方法
2010/06/06 PHP
PHP CLI模式下的多进程应用分析
2013/06/03 PHP
PHP单链表的实现代码
2016/07/05 PHP
javascript 写类方式之十
2009/07/05 Javascript
IE8 下的Js错误HTML Parsing Error...
2009/08/14 Javascript
IE、FF、Chrome浏览器中的JS差异介绍
2013/08/13 Javascript
jquery提取元素里的纯文本不包含span等里的内容
2013/09/30 Javascript
页面图片浮动左右滑动效果的简单实现案例
2014/02/10 Javascript
使用jQuery中的when实现多个AJAX请求对应单个回调的例子分享
2014/04/23 Javascript
js星星评分效果
2014/07/24 Javascript
JavaScript判断变量是否为空的自定义函数分享
2015/01/31 Javascript
JavaScript中数据结构与算法(四):串(BF)
2015/06/19 Javascript
详解webpack es6 to es5支持配置
2017/05/04 Javascript
基于JavaScript实现数码时钟效果
2020/03/30 Javascript
Vue项目中引入外部文件的方法(css、js、less)
2017/07/24 Javascript
vue+axios实现文件下载及vue中使用axios的实例
2018/09/21 Javascript
微信小程序自定义导航栏(模板化)
2019/11/15 Javascript
Vue学习之组件用法实例详解
2020/01/06 Javascript
Python读取mp3中ID3信息的方法
2015/03/05 Python
Python解析树及树的遍历
2016/02/03 Python
python smtplib模块实现发送邮件带附件sendmail
2018/05/22 Python
wxPython绘图模块wxPyPlot实现数据可视化
2019/11/19 Python
Pytorch 使用opnecv读入图像由HWC转为BCHW格式方式
2020/06/02 Python
python使用列表的最佳方案
2020/08/12 Python
python代码实现图书管理系统
2020/11/30 Python
HTML5新标签兼容——&gt; 的两种方法
2018/09/12 HTML / CSS
新百伦折扣店:Joe’s New Balance Outlet
2016/08/20 全球购物
Nordgreen美国官网:在线购买极简主义斯堪的纳维亚手表
2019/07/24 全球购物
分布式数据库需要考虑哪些问题
2013/12/08 面试题
法律进学校实施方案
2014/03/15 职场文书
国窖1573广告词
2014/03/21 职场文书
工程售后服务方案
2014/06/08 职场文书
结对共建协议书
2014/08/20 职场文书
学生考试舞弊检讨书
2015/01/01 职场文书
教你快速构建一个基于nginx的web集群项目
2021/11/27 Servers
python可视化分析绘制带趋势线的散点图和边缘直方图
2022/06/25 Python