/**
* 生成指定范围内的随机数(包含最小值和最大值),可以控制小数点后的位数
*
* @param min 随机数范围的最小值
* @param max 随机数范围的最大值
* @param decimals 小数点后的位数,默认为0(即返回整数)
* @returns 返回指定范围内的随机数,小数点后位数由 decimals 参数指定
*/
export const random = (min: number, max: number, decimals = 0): number => {
// 生成一个在 [min, max] 范围内的随机数
const randomValue = Math.random() * (max - min) + min;
// 计算小数位数对应的因子,用于四舍五入到指定的小数位
const factor = Math.pow(10, decimals);
// 将生成的随机数四舍五入到指定的小数位,并返回
return Math.round(randomValue * factor) / factor;
};
使用例:
console.log(random(20, 80, 2)) // 68.01
console.log(random(10, 80, 2)) // 23.23