web-utils-super
Version:
前端函数库
28 lines (26 loc) • 727 B
JavaScript
/**
*
* @desc 生成指定范围[min, max]的随机数
* @param {Number} min 默认0
* @param {Number} max 默认1
* @param {Boolean} integer 是否返回整数 默认true
* @return {Number}
*/
function randomNum(min = 0, max = 1, integer = true) {
if (min === undefined && max === undefined) {
min = 0
max = 0
}
if (min > max) {
[min, max] = [max, min]
}
if (!integer) {
const rand = Math.random()
const randLength = `${rand}`.length - 1
return Math.min(min + rand * (max - min + parseFloat(`1e-${randLength}`)), max)
}
min = Math.ceil(min)
max = Math.floor(max)
return Math.floor(Math.random() * (max - min + 1)) + min
}
module.exports = randomNum