Javascript 使用浮点值生成math.random

Javascript 使用浮点值生成math.random,javascript,floating-point,Javascript,Floating Point,我有一个小函数,它允许接收一些必须是百分比值(0-100)的整数,并滚动一些机会来了解它当前是否为真(滚动): 据我所知,这个func不会返回带有浮点值的true,因为randomrollvalue不能是浮点值,比如如果我想使用0.001%的概率,这将不会作为true传递,有没有办法让数学随机带有浮点值 jsIDLE:您可以使用以下代码: (Math.random() * (upper_limit - lower_limit) + lower_limit).toFixed(3) 更新 正如@

我有一个小函数,它允许接收一些必须是百分比值(0-100)的整数,并滚动一些机会来了解它当前是否为真(滚动):

据我所知,这个func不会返回带有浮点值的
true
,因为random
rollvalue
不能是浮点值,比如如果我想使用0.001%的概率,这将不会作为
true
传递,有没有办法让数学随机带有浮点值


jsIDLE:

您可以使用以下代码:

 (Math.random() * (upper_limit - lower_limit) + lower_limit).toFixed(3)
更新

正如@Pointy所说,这将返回字符串,如果希望它是float,可以使用parseFloat(value)或.toFixed()

编辑

Math.random()
结果默认为float,如果您不想设置限制(假设您对0到1的值表示同意),请从代码中删除
Math.floor
,这对我很有效


需要注意的是,此代码将返回字符串,而不是数字。您不必使用
.parseFloat()
;您只需跳过对
.toFixed()
的调用。实际上不需要使用
toFixed()
,因为随机数永远不会显示,它只会与传递到
参数中的任何值进行比较。(我意识到演示小提琴确实显示了它,但这似乎是一个测试,而不是所描述的问题的实际要求。)
Math.random()
返回一个大于或等于零且小于1的随机数。你得到的代码使用它来选择一个随机整数,但是没有什么内在的关于
Math.random()
的限制你使用整数。另外,请只
return value>=rollvalue
你的结果是一个全局变量,在它前面加上
var
。mplungjan说了什么,甚至
return value>=Math.floor((Math.random()*100)+1)
。除非您需要记录它,否则它的计算并不复杂,不需要中间变量。
 (Math.random() * (upper_limit - lower_limit) + lower_limit).toFixed(3)
function RollV(value) {
    var rollvalue = Math.random();
    $('.result').text(rollvalue);
    return value >= rollvalue;
}

console.log(0.01,RollV(0.01));