Javascript 如何生成随机+或-值

Javascript 如何生成随机+或-值,javascript,actionscript-3,Javascript,Actionscript 3,我试着从1到5个数字中加减 到目前为止,我已经: var number:int = Math.random() * 5; 现在我想把它随机设为正数或负数 我可以使用以下工具吗 // use math random to pick 1 or 0 and if 0 then negative number = Math.random() * 1 ? number : number * -1; 但是我不喜欢它。根据我的随机数学经验,数字总是0???。有更好的办法吗 Math.round(Math.

我试着从1到5个数字中加减

到目前为止,我已经:

var number:int = Math.random() * 5;
现在我想把它随机设为正数或负数

我可以使用以下工具吗

// use math random to pick 1 or 0 and if 0 then negative
number = Math.random() * 1 ? number : number * -1;
但是我不喜欢它。根据我的随机数学经验,数字总是0???。有更好的办法吗

Math.round(Math.random()) > 0 ? 1 : -1;
Math.random-从0到1的随机数,0.54398938 Math.round-将数字四舍五入为有理数,0.54398938现在为1 x>0?1:-1-检查x是否大于0,分配1,否则-1,1大于0-分配1 随机函数{ document.querySelector'number'。innerHTML=Math.roundMath.random>0?1:-1; } 你随机化了:x 再试一次
地板将给出值的正态分布,而圆形不会给出最小值和最大值。但你们应该记住在参数中加1。另外,Math.random永远不会返回1,这意味着在这种情况下,我们永远不会从Math.floor得到11。最大可能值为10。

谢谢。你打败了系统伙计,真不敢相信你能回答这么快!简单的[1,-1][+Math.random>0.5]或者使用三元运算符怎么样?舍入它真的没有意义。@Derek朕會功夫 嗯,这是偏好的情况,我个人不喜欢hardcoding@MedetTleukabiluly但你也在密码中硬编码了三个数字。Math.roundMath.random>0不容易理解。我想说[1,-1][+Math.random>.5]对于这样一件小事来说太费心了。对我来说,最清楚的是数学。随机<.5-1:1。我不知道我是否应该再问一个问题,但有没有什么数学函数可以从1-3中选择一个数字?比如Math.pickANumberFrom1,3;或者数学。选择0,1,2;
var plusOrMinusVal = Math.random() < 0.5 ? -1 : 1;
Math.floor(Math.random() * 11) - 5;