从 min 到 max 的随机数
重要程度: 2
内建函数 Math.random() 会创建一个在 0 到 1 之间(不包括 1)的随机数。
编写一个 random(min, max) 函数,用以生成一个在 min 到 max 之间的随机浮点数(不包括 max))。
运行示例:
alert( random(1, 5) ); // 1.2345623452
alert( random(1, 5) ); // 3.7894332423
alert( random(1, 5) ); // 4.3435234525
我们需要将区间 0…1 中的所有值“映射”为范围在 min 到 max 中的值。
这可以分两个阶段完成:
- 如果我们将 0…1 的随机数乘以
max-min,则随机数的范围将从 0…1 增加到0..max-min。 - 现在,如果我们将随机数与
min相加,则随机数的范围将为min到max。
函数实现:
function random(min, max) {
return min + Math.random() * (max - min);
}
alert( random(1, 5) );
alert( random(1, 5) );
alert( random(1, 5) );