前言:
JS沒有現成的函數,能夠直接生成指定范圍的隨機數。
但是它有個函數:Math.random() 這個函數可以生成 [0,1) 的一個隨機數。
利用它,我們就可以生成指定范圍內的隨機數。
而涉及范圍的話,就有個邊界值的問題。這樣就包含四種情況:
1)min ≤ r ≤ max (一般這種比較常見)
2)min ≤ r < max
3) min < r ≤ max
4)min < r < max
一、min ≤ r ≤ max
function RandomNumBoth(Min,Max){
var Range = Max - Min;
var Rand = Math.random();
var num = Min + Math.round(Rand * Range); //四捨五入
return num;
}
二、min ≤ r < max
function RandomNum(Min, Max) {
var Range = Max - Min;
var Rand = Math.random();
var num = Min + Math.floor(Rand * Range); //捨去
return num;
}
三、min < r ≤ max
function RandomNum(Min, Max) {
var Range = Max - Min;
var Rand = Math.random();
if(Math.round(Rand * Range)==0){
return Min + 1;
}
var num = Min + Math.round(Rand * Range);
return num;
}
四、min < r < max
function RandomNum(Min, Max) {
var Range = Max - Min;
var Rand = Math.random();
if(Math.round(Rand * Range)==0){
return Min + 1;
}else if(Math.round(Rand * Max)==Max)
{
index++;
return Max - 1;
}else{
var num = Min + Math.round(Rand * Range) - 1;
return num;
}
}
以上這篇JS生成某個范圍的隨機數【四種情況詳解】就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支持。