首頁 > web前端 > js教程 > 主體

javascript中Math.random()使用詳解_javascript技巧

WBOY
發布: 2016-05-16 16:04:16
原創
1577 人瀏覽過

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()

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

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

相關標籤:
來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板