Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/454.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript JS如何返回一个随机数?_Javascript - Fatal编程技术网

Javascript JS如何返回一个随机数?

Javascript JS如何返回一个随机数?,javascript,Javascript,我知道如果您执行Math.random()操作,它将返回一个介于0(包含)和1(排除)之间的随机数,但是我在哪里可以找到JS如何选择返回这个数字 不包括较低级别的代码 根据维基百科,有很多方法可以获得随机数,但是JS使用的是哪种方法。随机数生成器math.random()是从当前时间开始播种的,就像在Java中一样。随机数生成器math.random()是从当前时间开始播种的,与Java一样。由JavaScript引擎供应商选择要使用的随机数生成器 只要它在区间[0,1>中产生一个“随机”数,它

我知道如果您执行
Math.random()
操作,它将返回一个介于0(包含)和1(排除)之间的随机数,但是我在哪里可以找到JS如何选择返回这个数字

不包括较低级别的代码


根据维基百科,有很多方法可以获得随机数,但是JS使用的是哪种方法。

随机数生成器math.random()是从当前时间开始播种的,就像在Java中一样。

随机数生成器math.random()是从当前时间开始播种的,与Java一样。

由JavaScript引擎供应商选择要使用的随机数生成器

只要它在区间
[0,1>
中产生一个“随机”数,它们将符合以下条件:

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

来源:

供应商没有列出他们使用的算法(据我所知),所以除非您想浏览源代码(如果可能),否则您无法找到(无论如何都很容易)


(如果您询问的是与安全性相关的问题:不要使用任何浏览器的内置浏览器,因为它们不适合此用途。)

由JavaScript引擎供应商选择要使用的随机数生成器

只要它在区间
[0,1>
中产生一个“随机”数,它们将符合以下条件:

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

来源:

供应商没有列出他们使用的算法(据我所知),所以除非您想浏览源代码(如果可能),否则您无法找到(无论如何都很容易)


(如果您询问的是与安全性相关的问题:不要使用任何浏览器中的内置浏览器,因为它们不适合此用途。)

请参见此处-每个“随机”数字都是从一个操作列表生成的,该列表被翻译成一个数字列表,然后是其他操作,然后是您的“随机”但是在这些伪生成器中没有有效的随机性,因为机器内部没有任何东西是随机的使用依赖于实现的算法或策略,返回一个带正号的数值,大于或等于0但小于1,随机或伪随机选择,并在该范围内近似均匀分布。和的可能重复项此答案似乎有一个很好的描述:@LightStyle:请参阅。a可用的实现是Linux系统上的特殊设备。请参见此处-每个“随机”数字都是从一个操作列表生成的,该列表被转换为一个数字列表,然后是其他操作,然后是您的“随机”但是在这些伪生成器中没有有效的随机性,因为机器内部没有任何东西是随机的使用依赖于实现的算法或策略,返回一个带正号的数值,大于或等于0但小于1,随机或伪随机选择,并在该范围内近似均匀分布。和的可能重复项此答案似乎有一个很好的描述:@LightStyle:请参阅。a可用的实现是Linux系统上的特殊设备。大多数实现可能都是这样做的,但标准并不要求它。@NiklasB。-可以正确地说,标准不要求它,因为在前面提到的内容中没有提到它是如何做的,说明它是从当前时间开始播种的。这就是w这是我的答案。这只是Gecko引擎实现的参考,虽然这可能是大多数实现的方式,但它不是标准所要求的。@NiklasB。-说标准不要求它是正确的,因为没有提到它是如何实现的,在前面说过这句话时说它是从m是当前时间。这是我的答案的基础。不过,这只是Gecko引擎实现的参考