当Javascript math.random方法被植入种子时

当Javascript math.random方法被植入种子时,javascript,random,seed,Javascript,Random,Seed,我想知道在浏览器环境中,Javascriptsmath.randommethod是何时播种的 是: A) 当电脑开机时 B) 在会话中首次启动浏览器时 C) 每次启动浏览器时 D) 第一次打开包含math.random的JS代码的页面时 E) 每次打开包含math.random的页面时 F) 第一次调用math.random()方法时 G) 其他来自: 返回大于或等于0的带正号的数值 但小于1,随机或伪随机选择,约 在该范围内均匀分布,使用 依赖于实现的算法或策略 因此,这取决于浏览器 由于它没

我想知道在浏览器环境中,Javascripts
math.random
method是何时播种的

是:

A) 当电脑开机时

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

C) 每次启动浏览器时

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

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

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

G) 其他

来自:

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

因此,这取决于浏览器

由于它没有任何实际的区别(只要在页面运行时没有种子),因为种子本身是随机的(通常基于种子设定时间的时间戳),浏览器文档很少,但是:

启用JavaScript时,随机数生成器将自动进行种子设定 先装


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

由于它是从当前时间开始设定的,这有什么区别?你不能使用A、B、D或F之间的差异。事实是JS的数学。random是我所知道的唯一一个不让你设定种子的随机库,这非常不幸。@Roy解释时间很长,我的英语不够准确,但答案可能对我有用。谢谢你知道每次都有不同的种子,对吗?好消息。所以,你们认为当你们关闭反浏览器并再次打开它时,JS会再次加载,math.random会再次播种吗?你有Chrome和Firefox math.random规范的链接吗?谢谢你的帮助。种子本身是“随机”的,伪生成器没有打开,那么它怎么可能对你有任何改变呢?关于Firefox,他们说它是基于时间戳的,但没有给出细节,也不应该给出细节。