前幾天寫了篇利用PHP生成唯一訂單號的方法,其中利用到了PHP中的隨機,那么今天就來說一說,利用JS生成隨機數的幾種方法。

国产视频app有JS有現成的取隨機數的函數,下面就能利用到幾種,可以生成規定的兩個數值之間的隨機數,也可以生成一串隨機的字符串

利用JS編寫函數,隨機兩個值之間的數字

代碼

国产视频app我們先寫出一個取兩個數值之間的隨機數的函數

function GetRandomNum(Min,Max){   
    var Range = Max - Min;   
    var Rand = Math.random();   
    return(Min + Math.round(Rand * Range));   
}

国产视频app調用上面的函數,并取1到10之間的一個隨機數

調用代碼如下

//飛鳥慕魚博客
var num = GetRandomNum(1,10);   
alert(num);

代碼截圖

JS隨機數,JS隨機字符串,Math.random(),Math.round(num),Math.ceil(n)

上面用到的函數解釋

Math:數學對象,提供對數據的數學計算。

国产视频appMath.random(); 結果為0-1間的一個隨機數(包括0,不包括1) 

Math.round(num); 參數num為一個數值,函數結果為num四舍五入后的整數。

用Math.round(Math.random());可均衡獲取0到1的隨機整數。

用Math.round(Math.random()*10);時,可基本均衡獲取0到10的隨機整數,其中獲取最小值0和最大值10的幾率少一半。

利用JS生成一串隨機的字符串

我們可以巧妙的利用生成的隨機,可以獲取一個數組中不同下標的值,來達到生成隨機不同字符串的目的

定義一個數組chars

代碼

var chars =['0','1','2','3','4','5','6','7','8','9','A','B','C','D','E','F','G'];

定義函數,并隨機取出數組中的值,組合成字符串

代碼

function generateMixed(n) {
    var res = "";
    for(var i = 0; i < n ; i ++) {
        var id = Math.ceil(Math.random()*17);
        res += chars[id];
    }
    return res;
}

代碼注釋:

国产视频app利用一個自定義的數組并隨機生成它的下標的形式,來達到輸出隨機字符串的形式,

国产视频app數組chars 可以自定義,但是他的個數減去1再與Math.random()生成的隨機數相乘,不然會出現空值的情況,導致函數運行失敗。

代碼截圖

JS隨機數,JS隨機字符串,Math.random(),Math.round(num),Math.ceil(n)

上用用到的JS函數解釋

国产视频appMath.ceil(n); 返回大于等于n的最小整數。

国产视频app用Math.ceil(Math.random()*10);時,主要獲取1到10的隨機整數,取0的幾率極小。

国产视频appMath.floor(n); 返回小于等于n的最大整數。

用Math.floor(Math.random()*10);時,可均衡獲取0到9的隨機整數。

PS:這篇文章寫的有點亂,有時間了再整理一下。