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
以上所述就是本文的全部內容了,希望大家能夠喜歡。