我试图找到一种在我的Node脚本命令中运行的方法,例如获取0.01到10.85的随机数。该数字必须看起来像0.01而不是0.000000001。
我该怎么做?
我目前的命令:
var randomTicket = helper.getRandomInt(0, 10.85);
该命令因某种原因只返回数字0
还有其他替代方法吗?
答案 0 :(得分:0)
Math.random可以解决问题。它返回一个介于[0,1)之间的值(1是独占的)。然后通过max和min之间的差异来缩放范围,并将min添加为偏移量。
function getRandomArbitrary(min, max) {
return Math.random() * (max - min) + min;
}
但是因为你得到一个浮点值,你不能在第二个位置后剪掉小数。您可以将其格式化为字符串。我不确定,但这应该有用。
var number = getRandomArbitrary(0.01, 10.85);
var numString = number.toFixed(2);
如果只生成整数,则将min和max乘以100.0,并将结果除以100.0。
var number = getRandomArbitrary(1.0, 1085.0);
var numString = (number / 100.0).toFixed(2);
或
var number = getRandomInt(1, 1085);
var numString = (number / 100.0).toFixed(2);