As per information from a Stack Overflow discussion, Math.random() in JavaScript seems to rely on the browser or operating system, indicating that there is no standard algorithm for generating uniform random variables in JavaScript. Another discussion thread mentions Chrome's random number algorithm as particularly poor.
In my program, I aim to analyze user behavior based on some data along with random noise. To generate Gaussian random numbers, I employ a Box-Muller transform on figures produced by Math.random(). Does this mean users on different browsers may experience various types of noise? I choose Box-Muller despite its slower speed because it can be sensitive to how pseudo random numbers are generated. While there are many debates on the flaws of using Math.random(), there appears to be less discussion on preferred alternatives. What constitutes best practice in this scenario? Are there specific considerations I should keep in mind when utilizing Box-Muller for converting to Gaussian numbers?