这不是第一次要求“ Math.random()是否相等”。
Will JavaScript random function ever return a 0 or 1?
Is it possible for Math.random() === Math.random()
https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Math/random-更高级别的说明
https://hackernoon.com/how-does-javascripts-math-random-generate-random-numbers-ef0de6a20131-较低级别的说明
所以;我的问题: JavaScript的Math.random()可以完全等于.5吗?
它符合>= 0 && < 1
的定义。但实际上,我尝试了几种不同的方法,最后一种是:
while (Math.random() != .5)
它们要么超时要么从不完全相等。.5
数十亿次尝试/多个浏览器(firefox 60+ X64)随后崩溃。可能吗?是否依赖于浏览器/系统?是我对统计概率缺乏理解吗?
答案 0 :(得分:-3)
好问题!我不是统计学家,因此拥有更多经验的人可以随时加入并纠正我。
据我所知,您的问题的答案是
所以;我的问题: JavaScript的Math.random()是否可以精确等于.5 ?
否!这个答案令我有些惊讶,因为它有点反常。但我认为this website提供了很好的解释。答案是否定的原因是,您被限制在(0,1)(不包括)范围内。这是一个连续的分布。因此,您的问题本质上是在问:
从连续分布中选择特定值的可能性是什么?
答案是0。从连续分布中采样(根据定义)有无限多种可能性。因此,获得指定值的可能性为:1 /无穷大,渐近接近零。