Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/448.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
0和1之间的Javascript随机数_Javascript_Random_Floating Point - Fatal编程技术网

0和1之间的Javascript随机数

0和1之间的Javascript随机数,javascript,random,floating-point,Javascript,Random,Floating Point,我似乎无法使用Math.floor((Math.random()*1.0)+0.0)从0.0到1.0生成一个随机浮点数 有解决方法吗?按原样将生成一个介于0.0和1.0之间的随机浮点数 工作示例: document.getElementById(“生成”).onclick=function(){ document.getElementById(“random”).value=Math.random(); }; 生成随机数 正如您可能看到的,乘以1.0再加上0.0是完全无用的。打破机制的是Mat

我似乎无法使用
Math.floor((Math.random()*1.0)+0.0)从0.01.0生成一个随机浮点数

有解决方法吗?

按原样将生成一个介于
0.0
1.0
之间的随机浮点数

工作示例:

document.getElementById(“生成”).onclick=function(){
document.getElementById(“random”).value=Math.random();
};
生成随机数

正如您可能看到的,乘以1.0再加上0.0是完全无用的。打破机制的是Math.floor,它很可能将您的数字减少到0.0,而不考虑0.0和1.0 Math.random.returns之间的数字。

从0包括到1排除。所以它永远不会返回1。@Darky正确
Math.random()
始终为范围
[0,1)
生成数字。OP提出的最小-最大解决方案的工作方式相同。
Math.floor()
可能会将范围
[0.0,1.0>
中的任何值转换为0.0。摆脱
Math.floor()
call.
*1.0
+0.0
应该做什么?只需使用普通的
Math.random()
并去掉其余部分。也许
Math.round(Math.random())
?:)