JS实现的生成随机数的4个函数分享


Posted in Javascript onFebruary 11, 2015

第一种方法

/*

*@desc:生成随机字符串

*@remark:toString方法可以接收一个基数作为参数的原理,这个基数从2到36封顶。如果不指定,默认基数是10进制

*/

function generateRandomAlphaNum(len) {

    var rdmString = "";

    for (; rdmString.length < len; rdmString += Math.random().toString(36).substr(2));

    return rdmString.substr(0, len);

}

第二种方法

//JS生成GUID函数,类似.net中的NewID(); 

function S4() {

    return (((1 + Math.random()) * 0x10000) | 0).toString(16).substring(1);

}
function NewGuid() {

    return (S4() + S4() + "-" + S4() + "-" + S4() + "-" + S4() + "-" + S4() + S4() + S4());

}

第三种方法

//JS生成GUID函数,类似.net中的NewID(); 

function newGuid() {

    var guid = "";

    for (var i = 1; i <= 32; i++) {

        var n = Math.floor(Math.random() * 16.0).toString(16);

        guid += n;

        if ((i == 8) || (i == 12) || (i == 16) || (i == 20))

            guid += "-";

    }

    return guid;

}

第四种方法

/*

*@desc:生成随机字符串

*@demo:console.log(ranStr());

*/

;(function(){

    //数字0-9,大写字母,小写字母,ASCII或UNICODE编码(十进制),共62个

    var charCodeIndex = [[48,57],[65,90],[97,122]];

    var charCodeArr = [];
    function getBetweenRound(min,max){

        return Math.floor(min+Math.random()*(max-min));

    };
    function getCharCode(){

        for(var i=0,len=3;i<len;i++){

            var thisArr = charCodeIndex[i];

            for(var j=thisArr[0],thisLen=thisArr[1];j<=thisLen;j++){

                charCodeArr.push(j);

            }

        }

    }
    function ranStr(slen){

        slen = slen || 20;

        charCodeArr.length<62 && getCharCode();
        var res = [];

        for(var i=0;i<slen;i++){

            var index = getBetweenRound(0,61);

            res.push(String.fromCharCode(charCodeArr[index]));

        }

        return res.join('');

    };
    this.ranStr = ranStr;

})();
Javascript 相关文章推荐
JScript中的undefined和&quot;undefined&quot;的区别
Mar 08 Javascript
javascript下给元素添加事件的方法与代码
Aug 13 Javascript
非html5实现js版弹球游戏示例代码
Sep 22 Javascript
JQuery中dataGrid设置行的高度示例代码
Jan 03 Javascript
禁止iframe页面的所有js脚本如alert及弹出窗口等
Sep 03 Javascript
JavaScript中的比较操作符&gt;、=、
Dec 31 Javascript
jQuery创建DOM元素实例解析
Jan 19 Javascript
JavaScript前补零操作实例
Mar 11 Javascript
AngularJS中的过滤器使用详解
Jun 16 Javascript
微信小程序 教程之注册页面
Oct 17 Javascript
详解Angular之constructor和ngOnInit差异及适用场景
Jun 22 Javascript
element中的$confirm的使用
Apr 26 Javascript
JavaScript中的分号插入机制详细介绍
Feb 11 #Javascript
Javascript核心读书有感之语句
Feb 11 #Javascript
JavaScript数据结构和算法之二叉树详解
Feb 11 #Javascript
JavaScript中的函数模式详解
Feb 11 #Javascript
Javascript核心读书有感之表达式和运算符
Feb 11 #Javascript
JavaScript数据结构和算法之图和图算法
Feb 11 #Javascript
Javascript核心读书有感之类型、值和变量
Feb 11 #Javascript
You might like
咖啡知识大全
2021/03/03 新手入门
Discuz板块横排显示图片的实现方法
2007/05/28 PHP
PHP读取MySQL数据代码
2008/06/05 PHP
php addslashes 利用递归实现使用反斜线引用字符串
2013/08/05 PHP
php后门URL的防范
2013/11/12 PHP
PHP自动生成表单代码分享
2015/06/19 PHP
让您的菜单不离网站
2006/10/03 Javascript
JavaScript脚本性能的优化方法
2007/02/02 Javascript
讲两件事:1.this指针的用法小探. 2.ie的attachEvent和firefox的addEventListener在事件处理上的区别
2007/04/12 Javascript
从面试题学习Javascript 面向对象(创建对象)
2012/03/30 Javascript
javascript对话框使用方法(警告框 javascript确认框 提示框)
2014/01/07 Javascript
JavaScript对象之深度克隆介绍
2014/12/08 Javascript
AngularJs 国际化(I18n/L10n)详解
2016/09/01 Javascript
Angular获取手机验证码实现移动端登录注册功能
2017/05/17 Javascript
Vue.js仿微信聊天窗口展示组件功能
2017/08/11 Javascript
js 概率计算(简单版)
2017/09/12 Javascript
在Vue中使用axios请求拦截的实现方法
2018/10/25 Javascript
详解vuejs2.0 select 动态绑定下拉框支持多选
2019/04/25 Javascript
使用Python实现下载网易云音乐的高清MV
2015/03/16 Python
python的keyword模块用法实例分析
2015/06/30 Python
python 性能优化方法小结
2017/03/31 Python
Python设计模式之门面模式简单示例
2018/01/09 Python
Python使用matplotlib绘制多个图形单独显示的方法示例
2018/03/14 Python
使用 Python 实现微信群友统计器的思路详解
2018/09/26 Python
OpenCV模板匹配matchTemplate的实现
2019/10/18 Python
python实现滑雪游戏
2020/02/22 Python
scrapy-redis分布式爬虫的搭建过程(理论篇)
2020/09/29 Python
原装进口全世界:天猫国际
2016/08/03 全球购物
Sam’s Club山姆会员商店:沃尔玛旗下高端会员制商店
2017/01/16 全球购物
东南亚排名第一的服务市场:kaodim
2019/03/28 全球购物
杭州联环马网络笔试题面试题
2013/08/04 面试题
大学生求职推荐信
2013/11/27 职场文书
教师实习自我鉴定
2013/12/11 职场文书
办公室主任竞聘演讲稿
2014/05/15 职场文书
教师竞聘演讲稿
2014/05/16 职场文书
小学生一年级(书信作文)
2019/08/13 职场文书