Get to know MDN better
此页面由社区从英文翻译而来。了解更多并加入 MDN Web Docs 社区。
Math.random() 静态方法返回一个大于等于 0 且小于 1 的伪随机浮点数,并在该范围内近似均匀分布,然后你可以缩放到所需的范围。其实现将选择随机数生成算法的初始种子;它不能由用户选择或重置。
备注:Math.random() 不能提供密码学安全的随机数。请不要使用它们来处理与安全相关的事情。请使用 Web Crypto API 代替,更具体地来说是 Crypto.getRandomValues() 方法。
无。
一个在 0(包括)到 1(不包括)之间的伪随机浮点数。
请注意,由于 JavaScript 中的数字是 IEEE 754 浮点数字,具有向最近偶数舍入(round-to-nearest-even)的行为,因此以下函数的范围(不包括 Math.random() 本身)并不准确。如果选择了非常大的边界(253 或更高),在极罕见的情况下有可能达到通常排除(usually-excluded)的上界。
该示例返回一个在指定值之间的随机数。这个值不小于(且有可能等于)min,并且小于(且不等于)max。
这个示例返回一个在指定值之间的随机整数。这个值不小于 min(如果 min 不是整数,则不小于 min 的向上取整数),且小于(但不等于)max。
备注:也许很容易想到用 Math.round() 来实现,但是这会导致你的随机数处于一个不均匀的分布,这可能不符合你的需求。
虽然上面的 getRandomInt() 函数包含最小值,但不含最大值。如果你需要结果同时包含最小值和最大值怎么办?下面的 getRandomIntInclusive() 函数可以实现这一点。
| ECMAScript® 2027 Language Specification # sec-math.random |
启用 JavaScript 以查看此浏览器兼容性表。