Math.random生成(n,m]范围随机数
1. 开闭区间
这个首先我们得弄明白 Math.random() 的范围和开闭区间问题吧?文档是有说明的,它是 [0, 1) 区间的。
2. 区间的移动和缩放
平移使用加减,缩放乘以系数。
//取得(n,m]范围随机数
function leftOpen(n,m) {
var result = Math.random()*(m-n)+n;
if(result === n) {
// 把左闭合修正成右闭合
result = m;
}
return result;
}