JavaScript - Math.random() - 参数

8
添加参数到Math.random()会有哪些变化?
例如:
Math.random() == Math.random(1234)

请举个例子说明你的意思? - Shamim Hafiz - MSFT
能否向 math.random() 添加参数? - Mahesh KP
1
一个简单的RTM案例。https://developer.mozilla.org/zh-CN/docs/Web/JavaScript/Reference/Global_Objects/Math/random(特别是那部分说“参数:无”)。 - spender
math.random() 应该抛出 ReferenceError。 :P - alex
6个回答

13

Math.random不接受参数。

如果您想生成在两个区间(a和b)之间的随机数,可以使用以下公式:

math.random()*(b-a)+a

请参阅让JavaScript Math.random()更有用 - user2428118
为什么要在末尾加上 +a?我不明白那个的重要性。输入 Math.floor(Math.random() * (100-1)) 将会给你一个介于 1 和 100 之间的数字... - john_h

9

请阅读规范

15.8.2.14 随机数生成函数 random ( )

返回一个正数值,大于或等于0但小于1的随机数或伪随机数,其分布在该范围内大致均匀,使用实现相关的算法或策略。 此函数不接受任何参数。


突出显示相关部分。 :) - alex

5

没有什么。在Javascript中,Math.random没有种子。函数调用中的任何内容都将被忽略。


4
没有官方参数。请查看此处:https://developer.mozilla.org/en/JavaScript/Reference/Global_Objects/Math/random 混淆是可以理解的。由于它来自C / Java,因此几个站点在函数中具有种子。有关此被忽略参数的更多信息,请参见此处:Math.random() - Not random 如果您想要更好的随机数,请从这里获取一个:http://www.random.org/clients/http/ - 您需要将其包装在一些基于服务器的客户端中 - 有关更多信息,请参见此处:Cross domain ajax request from javascript file without help of server side code 更新:已向random.org的创建者发送电子邮件-他回复说正在开发jsonp实现...

3
它只会忽略传递的参数。

2
它不需要任何参数-Math.random()不需要任何参数... :)

如何使随机数更强或使用其他随机数? - asifg
2
“更强的随机”?恐怕我不明白了……如果您是指在不同范围内生成随机数,请查看Parkyprg的答案。 - chrisfrancis27

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接