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

第一种方法


代码如下:

/*
*@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;
})();

(0)

相关推荐

  • javascript根据时间生成m位随机数最大13位

    根据时间生成m位随机数,最大13位随机数,并且不能保证首位不为0 function ran(m) { m = m > 13 ? 13 : m; var num = new Date().getTime(); return num.toString().substring(13 - m); } console.log(ran(5)); 根据Math的random函数生成的随机数截取m位,生成的随机数最大不超过16位,能保证首位不为0 function rand(m) { m = m > 16 ?

  • js生成随机数的方法实例

    js生成随机数主要用到了内置的Math对象的random()方法.用法如:Math.random().它返回的是一个 0 ~ 1 之间的随机数.有了这么一个方法,那生成任意随机数就好理解了.比如实际中我们可能会有如下的需要: (1)生成一个 0 - 100 之间的随机整数,那么则可以: parseInt(100*Math.random()); 注意:因为Math.random()的返回值是包括0和1的,所以这里是有生成0和100的可能性的. (2)生成一个从 m - n 之间的随机整数,例如要生

  • JS简单随机数生成方法

    本文实例讲述了JS简单随机数生成方法.分享给大家供大家参考,具体如下: <!doctype html> <html> <head> <meta charset="utf-8"> <title>随机数</title> </head> <body> <script type="text/javascript"> function Randnum(value){ v

  • javascript生成随机数方法汇总

    今天有又网友问到我 JavaScript 怎么生成指定范围数值随机数.Math.random() 这个方法相信大家都知道,是用来生成随机数的.不过一般的参考手册时却没有说明如何用这个方法来生成指定范围内的随机数.这次我就来详细的介绍一下Math.random(),以及如何用它来生成制定范围内的随机数. 基础教程请看这里 http://www.jb51.net/w3school/js/jsref_random.htm 看完教程,应该知道Math.random()方法的基本用法了. 利用 parse

  • 基于javascript实现彩票随机数生成(升级版)

    本文实例讲解了JavaScript 实现彩票中随机数组的获取详细代码,分享给大家供大家参考,具体内容如下 效果图: 具体代码: <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>Math.random方法彩票随机数的生成-升级版</title> <style type="text/css&q

  • JavaScript简单生成 N~M 之间随机数的方法

    本文实例讲述了JavaScript简单生成 N~M 之间随机数的方法.分享给大家供大家参考,具体如下: getRandom.js: /** * Created with JetBrains PhpStorm. * User: lee * To change this template use File | Settings | File Templates. */ //获取一个随机数,在max,min之间 //max 需大于 min //如果输入 10,则产生 0~9 的数 //如果输入 10,

  • js生成随机数(指定范围)的实例代码

    1.随机生成4位数的随机数 <script language="javascript"> /** * 随机生成4位的随机数 * http://www.yulu.jb51.net */ document.write(parseInt(10*Math.random())); //输出0-10之间的随机整数 document.write(Math.floor(Math.random()*10+1)); //输出1-10之间的随机整数 function RndNum(n){ var

  • 基于javascript实现彩票随机数生成(简单版)

    本文实例讲解了JavaScript 实现彩票中随机数组的获取详细代码,分享给大家供大家参考,具体内容如下 效果图: 具体代码: <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>Math.random方法彩票随机数的生成</title> </head> <body> <!--

  • 在javascript中随机数 math random如何生成指定范围数值的随机数

    今天有朋友向我请教:JavaScript 怎么生成指定范围数值随机数.Math.random() 这个方法相信大家都知道,是用来生成随机数的.不过一般的参考手册时却没有说明如何用这个方法来生成指定范围内的随机数.这次我就来详细的介绍一下Math.random(),以及如何用它来生成制定范围内的随机数. w3school的random()教程 定义和用法 random() 方法可返回介于 0 ~ 1 之间的一个随机数. 语法 Math.random() 返回值 0.0 ~ 1.0 之间的一个伪随机

  • JS生成不重复的随机数组的简单实例

    JS生成不重复的随机数组的简单实例 //获取数组中的随机数 //HF.Math.RandomNumbers是前缀,可以自己定义,主要看逻辑代码 HF.Math.RandomNumbers = function (startNum, endNum, count, repeat) { var ret = []; if (repeat) { for (var i = 0; i < count; i++) { ret[i] = HF.Math.Random(startNum, endNum); } re

  • javascript生成不重复的随机数

    题目来源:在慕课学习jQuery过程中一道测试题. 初始时:<ul>元素中仅显示5个<li>元素,其中包含还包括最后一个<li>元素,<a>元素中的显示"更多"字符. 当点击"更多"链接时,自身内容变为"简化",同时,<ul>元素中显示全部的<li>元素. 当点击"简化"链接时,自身内容变为"更多",同时,<ul>元素中仅显

  • JS简单生成两个数字之间随机数的方法

    本文实例讲述了JS简单生成两个数字之间随机数的方法.分享给大家供大家参考,具体如下: 运行效果截图如下: 完整代码如下: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xh

随机推荐