首頁 web前端 js教程 JS實現的生成隨機數的4個函數分享_基礎知識

JS實現的生成隨機數的4個函數分享_基礎知識

May 16, 2016 pm 04:14 PM
js 函數 產生隨機數

第一種方法

複製程式碼 程式碼如下:

/*
*@desc:產生隨機字串
*@remark:toString方法可以接收一個基數作為參數的原理,這個基數從2到36封頂。如果不指定,預設基數是10進位
*/
function generateRandomAlphaNum(len) {
    var rdmString = "";
    for (; rdmString.length     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         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             var thisArr = charCodeIndex[i];
            for(var j=thisArr[0],thisLen=thisArr[1];j                 charCodeArr.push(j);
            }
        }
    }

    function ranStr(slen){
        slen = slen || 20;
        charCodeArr.length

        var res = [];
        for(var i=0;i             var index = getBetweenRound(0,61);
            res.push(String.fromCharCode(charCodeArr[index]));
        }
        return res.join('');
    };

    this.ranStr = ranStr;
})();

本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn

熱門文章

兩個點博物館:邦格荒地地點指南
4 週前 By 尊渡假赌尊渡假赌尊渡假赌
倉庫:如何復興隊友
3 週前 By 尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island冒險:如何獲得巨型種子
3 週前 By 尊渡假赌尊渡假赌尊渡假赌

熱門文章

兩個點博物館:邦格荒地地點指南
4 週前 By 尊渡假赌尊渡假赌尊渡假赌
倉庫:如何復興隊友
3 週前 By 尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island冒險:如何獲得巨型種子
3 週前 By 尊渡假赌尊渡假赌尊渡假赌

熱門文章標籤

記事本++7.3.1

記事本++7.3.1

好用且免費的程式碼編輯器

SublimeText3漢化版

SublimeText3漢化版

中文版,非常好用

禪工作室 13.0.1

禪工作室 13.0.1

強大的PHP整合開發環境

Dreamweaver CS6

Dreamweaver CS6

視覺化網頁開發工具

SublimeText3 Mac版

SublimeText3 Mac版

神級程式碼編輯軟體(SublimeText3)

golang函數動態建立新函數的技巧 golang函數動態建立新函數的技巧 Apr 25, 2024 pm 02:39 PM

golang函數動態建立新函數的技巧

C++ 函數命名中參數順序的考慮 C++ 函數命名中參數順序的考慮 Apr 24, 2024 pm 04:21 PM

C++ 函數命名中參數順序的考慮

如何在Java中寫出高效和可維護的函數? 如何在Java中寫出高效和可維護的函數? Apr 24, 2024 am 11:33 AM

如何在Java中寫出高效和可維護的函數?

excel函數公式大全 excel函數公式大全 May 07, 2024 pm 12:04 PM

excel函數公式大全

C++ 函式預設參數與可變參數的優缺點比較 C++ 函式預設參數與可變參數的優缺點比較 Apr 21, 2024 am 10:21 AM

C++ 函式預設參數與可變參數的優缺點比較

C++ 函式回傳參考型別有什麼好處? C++ 函式回傳參考型別有什麼好處? Apr 20, 2024 pm 09:12 PM

C++ 函式回傳參考型別有什麼好處?

自訂 PHP 函數和預定義函數之間有什麼區別? 自訂 PHP 函數和預定義函數之間有什麼區別? Apr 22, 2024 pm 02:21 PM

自訂 PHP 函數和預定義函數之間有什麼區別?

C++ 函式中引用參數和指標參數的高階用法 C++ 函式中引用參數和指標參數的高階用法 Apr 21, 2024 am 09:39 AM

C++ 函式中引用參數和指標參數的高階用法

See all articles