当Javascript math.random方法播种时

时间:2013-05-28 10:17:57

标签: javascript random seed

我想知道在浏览器环境中何时播种Javascripts math.random方法。

是吗:

A)计算机开机时

B)首次在会话中启动浏览器

C)每次启动浏览器

D)第一次打开包含math.random的JS代码的页面时

E)每次打开包含math.random的页面

F)第一次调用math.random()方法时

G)其他

1 个答案:

答案 0 :(得分:1)

来自ECMAScript

  

返回带有正号的Number值,大于或等于0   但小于1,随机选择或伪随机选择近似   在该范围内均匀分布,使用   依赖于实现的算法或策略

所以,这取决于浏览器。

由于没有任何实际差异(只要在您的网页运行时没有播种),因为种子本身就是随机的(通常基于播种时间的时间戳) ,浏览器文档稀疏但here's what Internet Explorer's one says

  

当JavaScript出现时,随机数生成器会自动播种   先加载。

由于大多数其他策略会引发潜在错误,我认为您可以假设在第一次调用Math.random和浏览器关闭之间不会有任何新的播种。