嘿:)例如,您可以使用以下方法从数字中减去35%:

var valueInString = "2383";
var num = parseFloat(valueInString);
var val = num - (num * .35);
console.log(val);


但是如何将.35 / 0.35部分随机化呢?

例如,如果我尝试:

var randomREAL = require('randomize');
var randomARR = [30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75]
// randomREAL(randomARR) will generate a random number between 30 - 75 so that I can randomize my percentage value between 30% & 75%

var valueInString = "2383";
var num = parseFloat(valueInString);
var val = num - ( num * 0.randomREAL(randomARR) );
console.log(val);


我不能用

0.randomREAL(randomARR)


要么

.randomREAL(randomARR)


另外如果我会建立一个像

var test = randomREAL(randomARR)
0.test


这是行不通的。

任何想法如何随机化百分比值?

最佳答案

+("0."+randomARR[ Math.floor( randomARR.length * Math.random() ) ])


如您所指出


  另外如果我会建立一个像
  
  var test = randomREAL(randomARR)
     0.测试
  
  这是行不通的。


因为0.不是字符串。您想要字符串串联,例如:

"0."+35


然后您需要将其解析回一个数字,可以使用unary plus operator完成:

+("0."+35)


此外,如果数字始终为两位数,则还可以使用/100 ...

提示:获得30到75之间的随机整数很容易:

30 + Math.floor( Math.random() * ( 75 - 30 ))

08-04 02:44