javascript中Math.random()使用詳解
Math.random()方法返回大于等于 0 小于 1 的一個隨機(jī)數(shù)。對于某些站點來說,這個方法非常實用,因為可以利用它來隨機(jī)顯示一些名人名言和新聞事件。
1. 在連續(xù)整數(shù)中取得一個隨機(jī)數(shù)
值 = Math.floor(Math.random() * 可能值的總數(shù) + 第一個可能的值)
例:產(chǎn)生1-10的隨機(jī)數(shù)
var rand1 = Math.floor(Math.random() * 10 + 1);
編寫產(chǎn)生startNumber至endNumber隨機(jī)數(shù)的函數(shù)
function selectFrom(startNumber, endNumber) {
var choice = endNumber - startNumber + 1;
return Math.floor(Math.random() * choice + startNumber)
}
var rand2 = selectFrom(2,8);//產(chǎn)生2至8的隨機(jī)數(shù)
2. 在不相鄰整數(shù)中取得一個隨機(jī)數(shù)
2.1 在不相鄰的兩個整數(shù)中取得一個隨機(jī)數(shù)
例:隨機(jī)產(chǎn)生2或4中的一個數(shù)
var rand3 = Math.random() < 0.5 ? 2 : 4;
2.2 在不相鄰的多個整數(shù)中產(chǎn)生一個隨機(jī)數(shù)
結(jié)合函數(shù)參數(shù)數(shù)組,可編寫在不相鄰的多個整數(shù)中產(chǎn)生一個隨機(jī)值的函數(shù)
function selectFromMess() {
return arguments[Math.floor(Math.random() * arguments.length)]
}
//隨機(jī)產(chǎn)生1、6、8中的一個數(shù)
var rand4 = selectFromMess(1, 6, 8);
//也可隨機(jī)產(chǎn)生文本
var randomTxt1 = selectFromMess("安慰獎", "二等獎", "一等獎");
每次要輸入這么多參數(shù)比較麻煩,可以改寫一下函數(shù)
function selectFromMessArray(arr) {
return arr[Math.floor(Math.random() * arr.length)]
}
var arrayTxt=["一","二","三","四","五"];
var randTxt2 = selectFromMessArray(arrayTxt);
或者不改變原有方法,可以利用apply()這個方法傳遞數(shù)組參數(shù)
var randTxt3 = selectFromMess.apply(null,arrayTxt);
關(guān)于apply方法的使用可以看http://m.fzitv.net/article/42705.htm
以上所述就是本文的全部內(nèi)容了,希望大家能夠喜歡。
相關(guān)文章
js實現(xiàn)內(nèi)容顯示并使用json傳輸數(shù)據(jù)
這篇文章主要為大家詳細(xì)介紹了js實現(xiàn)內(nèi)容顯示并使用json傳輸數(shù)據(jù)的方法,感興趣的小伙伴們可以參考一下2016-03-03
原生JavaScript實現(xiàn)todolist功能
本篇文章給大家介紹了通過原生JavaScript實現(xiàn)todolist功能相關(guān)知識點,對此有需要的朋友可以學(xué)習(xí)下。2018-03-03
JS+WCF實現(xiàn)進(jìn)度條實時監(jiān)測數(shù)據(jù)加載量的方法詳解
這篇文章主要介紹了JS+WCF實現(xiàn)進(jìn)度條實時監(jiān)測數(shù)據(jù)加載量的方法,結(jié)合實例形式分析了大量數(shù)據(jù)導(dǎo)入過程中前臺js與后臺WCF交互實現(xiàn)實時顯示加載進(jìn)度的相關(guān)操作技巧,需要的朋友可以參考下2017-12-12
關(guān)于微信小程序中使用wx.getLocation獲取當(dāng)前詳細(xì)位置并計算距離
這篇文章主要介紹了關(guān)于微信小程序中使用wx.getLocation獲取當(dāng)前詳細(xì)位置并計算距離,wx.getLocation只能夠獲取經(jīng)緯度,不能夠拿到詳細(xì)地址,這里使用騰訊地圖的api,需要的朋友可以參考下2023-04-04
微信小程序連接服務(wù)器展示MQTT數(shù)據(jù)信息的實現(xiàn)
這篇文章主要介紹了微信小程序連接服務(wù)器展示MQTT數(shù)據(jù)信息的實現(xiàn),文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2020-07-07
JavaScript中防抖和節(jié)流的原理和區(qū)別詳解
JavaScript 中,防抖和節(jié)流是一種用于優(yōu)化事件處理函數(shù)調(diào)用頻率的技術(shù),防抖和節(jié)流的目的都是為了避免頻繁地觸發(fā)事件處理函數(shù),從而減少瀏覽器和服務(wù)器的負(fù)擔(dān),本文將給大家介紹一下JavaScript中防抖和節(jié)流的原理和區(qū)別,需要的朋友可以參考下2023-09-09

