根据这个 Stack Overflow 线程,JavaScript 中的 Math.random() 取决于浏览器或操作系统。基本上,这意味着 JavaScript 没有生成统一随机变量的标准算法。这个线程似乎表明 Chrome 的统一随机数算法特别糟糕。
在我的程序中,我尝试根据一些信息和随机噪声来了解用户的行为。我对 Math.random() 生成的数字使用 Box-Muller 变换来生成高斯随机数。这是否意味着使用一种浏览器的用户会遇到与其他浏览器不同类型的噪音?注意我使用 Box Muller 是因为我不关心速度,但我知道它可能对伪随机数的生成方式特别敏感。似乎有很多关于为什么 Math.random() 不好的线程,但在线程中并没有那么多关于实际使用什么的线程。最佳做法是什么?有什么我应该特别注意的,因为我使用 Box-Muller 转换为高斯数?