gpt4 book ai didi

javascript - Math.random 可以产生的最大值是多少?

转载 作者:行者123 更新时间:2023-12-03 07:10:31 25 4
gpt4 key购买 nike

使用时 Math.random关于javascript,我遇到了一个有趣的问题。
根据docs ,它会产生一个“范围在 0 到小于 1 之间的伪随机数”,但是它可以产生小于 1 的最大数字是多少?
我做了这个愚蠢的代码来尝试获得最高值

maxIteration = 1000000000
value = 0
count = 0
while(value < 1 && count++ < maxIteration) {
let newValue = Math.random()
value = value < newValue ? newValue : value
}
console.log('value', value)
console.log('count', count)
我能得到的最高值是 0.9999999989486876 ,但它是最高的吗?

最佳答案

What is the max value that Math.random can produce?


该文档未能说明您指向的 Mozilla 文档和 ECMAScript Language Specification (撰写本文时为 2020 版)。 Number 小于 1 的最大值type 可以表示的是 1−2−53。 (当有效数的所有 53 位都为 1 且指数为 -1 时,会出现此值,给出值 +1.111…1112•2−1 = 1−2−53。)理想情况下,这将是最大值 Math.random返回,但文档没有这么说。

关于javascript - Math.random 可以产生的最大值是多少?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/64052337/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com