【发布时间】:2013-10-30 17:01:40
【问题描述】:
根据this Stack Overflow thread,JavaScript 中的 Math.random() 取决于浏览器或操作系统。基本上,这意味着 JavaScript 没有生成统一随机变量的标准算法。 This thread 似乎暗示 Chrome 的统一随机数算法特别糟糕。
在我的程序中,我尝试根据一些信息和随机噪声来了解用户的行为方式。我对 Math.random() 生成的数字使用 Box-Muller 变换来生成高斯随机数。这是否意味着使用一种浏览器的用户会遇到与其他浏览器不同类型的噪音?注意我使用 Box Muller 是因为我不关心速度,但我知道它对伪随机数的生成方式特别敏感。似乎有很多关于为什么 Math.random() 不好的线程,但在线程中并没有那么多关于实际使用什么的线程。最佳做法是什么?由于我使用 Box-Muller 转换为高斯数,有什么需要特别注意的吗?
【问题讨论】:
-
这大概是您感兴趣的 JavaScript - 为什么您提到(并标记)Java?
-
java 和 javascript 就像汽车和地毯一样相互关联
-
抱歉打错了,已修复
-
考虑向在线随机数生成器 API 发出 AJAX 请求,以一次获取一批随机数并使用它。这意味着无论浏览器如何,数字的随机性都将来自同一来源。
标签: javascript random