在 JavaScript 中,Math.random() 函数用于生成一个 0 到 1 之间的随机小数(包括 0,但不包括 1)。这个函数是生成随机数的基础工具。
当需要生成指定范围内的随机整数时,通常会将 Math.random() 与 Math.round() 结合使用。具体方法如下:
生成随机小数:
Math.random()生成一个 0 到 1 之间的浮点数。缩放范围:将随机数乘以一个范围值,例如
Math.random() * 10会得到 0 到 10 之间的浮点数。取整处理:使用
Math.round()对结果进行四舍五入,得到一个整数。
例如,要生成 1 到 10 之间的随机整数,可以这样写:
var randomInt = Math.round(Math.random() * 9 + 1);
这里 Math.random() * 9 生成 0 到 9 之间的随机小数,加 1 后变成 1 到 10 之间,再用 Math.round() 四舍五入得到整数。
需要注意的是,Math.round() 在处理 0.5 时会向正无穷方向舍入,这可能导致某些边界值的概率略微偏高。因此,在需要严格均匀分布的场景中,可能需要使用 Math.floor() 或 Math.ceil() 来替代 Math.round()。
例如,使用 Math.floor() 生成 1 到 10 的随机整数:
var randomInt = Math.floor(Math.random() * 10) + 1;
这种方式避免了 Math.round() 的舍入问题,确保每个整数被选中的概率相等。