需要了解的 Math 对象方法
方法 | 描述 |
---|---|
ceil(x) | 进行上舍入,即向上取整。 |
floor(x) | 进行下舍入,即向下取整。 |
round(x) | 四舍五入。 |
random() | 返回 0 ~ 1 之间的随机数,包含 0 不包含 1。 |
概率说明
Math.ceil(Math.random()*10); // 获取从 1 到 10 的随机整数,取 0 的概率极小。
Math.round(Math.random()); // 可均衡获取 0 到 1 的随机整数。
Math.floor(Math.random()*10); // 可均衡获取 0 到 9 的随机整数。
Math.round(Math.random()*10); // 基本均衡获取 0 到 10 的随机整数,其中获取最小值 0 和最大值10 的几率少一半。
生成随机正整数的概率相等的几种情况
(1) 生成 [n,m),包含n但不包含m的正整数:
parseInt(Math.random()*(m-n)+n)
(2) 生成 (n,m],不包含n但包含m的正整数:
parseInt(Math.random()*(m-n)+n)+1
(3) 生成 [n,m],包含n和m的随机数:
parseInt(Math.random()*(m-n+1)+n)
(4) 生成 (n,m),不包含n和m的正整数:
parseInt(Math.random()*(m-n-1)+n+1)