DIV CSS 佈局教程網

 DIV+CSS佈局教程網 >> 網頁腳本 >> JavaScript入門知識 >> 關於JavaScript >> javascript中Math.random()使用詳解
javascript中Math.random()使用詳解
編輯:關於JavaScript     

Math.random()方法返回大於等於 0 小於 1 的一個隨機數。對於某些站點來說,這個方法非常實用,因為可以利用它來隨機顯示一些名人名言和新聞事件。

1. 在連續整數中取得一個隨機數

值 = Math.floor(Math.random() * 可能值的總數 + 第一個可能的值)
例:產生1-10的隨機數

復制代碼 代碼如下:
var rand1 = Math.floor(Math.random() * 10 + 1);

編寫產生startNumber至endNumber隨機數的函數

復制代碼 代碼如下:
function selectFrom(startNumber, endNumber) {
    var choice = endNumber - startNumber + 1;
    return Math.floor(Math.random() * choice + startNumber)
}
var rand2 = selectFrom(2,8);//產生2至8的隨機數

2. 在不相鄰整數中取得一個隨機數

2.1 在不相鄰的兩個整數中取得一個隨機數

例:隨機產生2或4中的一個數

復制代碼 代碼如下:
var rand3 = Math.random() < 0.5 ? 2 : 4;

2.2 在不相鄰的多個整數中產生一個隨機數

結合函數參數數組,可編寫在不相鄰的多個整數中產生一個隨機值的函數

復制代碼 代碼如下:
function selectFromMess() {
    return arguments[Math.floor(Math.random() * arguments.length)]
}
//隨機產生1、6、8中的一個數
var rand4 = selectFromMess(1, 6, 8);
//也可隨機產生文本
var randomTxt1 = selectFromMess("安慰獎", "二等獎", "一等獎");

每次要輸入這麼多參數比較麻煩,可以改寫一下函數

復制代碼 代碼如下:
function selectFromMessArray(arr) {
    return arr[Math.floor(Math.random() * arr.length)]
}
var arrayTxt=["一","二","三","四","五"];
var randTxt2 = selectFromMessArray(arrayTxt);

或者不改變原有方法,可以利用apply()這個方法傳遞數組參數

復制代碼 代碼如下:
var randTxt3 = selectFromMess.apply(null,arrayTxt);

關於apply方法的使用可以看http://www.jb51.net/article/42705.htm

以上所述就是本文的全部內容了,希望大家能夠喜歡。

XML學習教程| jQuery入門知識| AJAX入門| Dreamweaver教程| Fireworks入門知識| SEO技巧| SEO優化集錦|
Copyright © DIV+CSS佈局教程網 All Rights Reserved