首先先了解一下Math的方法
- Math.round(n) :四捨五入,返回n四捨五入後的整數
- Math.floor(n): 向下取整,返回小於等於n的整數
- Math.ceil(n):向上取整,返回大於等於n的整數
- Math.random():隨機生成[0,1)的隨機數,0<= n < 1
1. minNum <= n <= maxNum
隨機生成的值可能包含最大、最小值
function RandomNum (min, max) {
let range = max - min
return Math.round(Math.random()*range) + min
}
複製程式碼
2. minNum <= n < maxNum
隨機生成的值可能包含最小值但不可能包含最大值
function RandomNum (min, max) {
let range = max - min
return Math.floor(Math.random()*range) + min
}
複製程式碼
3. minNum < n <= maxNum
隨機生成的值可能包含最大值但不可能包含最小值
function RandomNum (min, max) {
let range = max - min
let num = Math.round(Math.random()*range)
if (num === 0) {
return min+1
} else {
return num + min
}
}
複製程式碼
4. minNum < n < maxNum
隨機生成的值既不包含最大值也不包含最小值
function RandomNum(Min, Max) {
let range = Max - Min;
let num = Math.round(Math.random()*range)
if (num === 0) {
return Min+1
} else if ( num === 8) {
return Max-1
} else {
return num + Min
}
}
複製程式碼