Math.random()是如何工作的?

时间:2016-10-21 12:40:45

标签: javascript

所以这里我们得到一个介于0和1之间的随机数并将其向下舍入,所以它总是等于0对吗?

var random = Math.floor(Math.random());

然后在这里我们将它乘以5.所以肯定0 * 5总是等于0?

var random = Math.floor(Math.random() * 5);

那么它如何返回1到5之间的数字?

由于

3 个答案:

答案 0 :(得分:4)

表达式

Math.floor(Math.random() * 5)
通过首先调用Math.random()然后将该结果乘以5来评估

。这将是0到5之间的数字(可能等于零,但总是小于5)。

只有这样才能将结果传递给Math.floor()

通常首先评估带括号的子表达式。在这种情况下,它是一个函数调用,但这仍然是一个很好的“经验法则”要记住。 “从内到外工作”,这与你在一个精致的晚宴上如何使用银器有点相反。我承认从来没有弄清楚如何处理盘子顶部的器具。

答案 1 :(得分:-1)

var random = Math.round(Math.random() * (5/1))

这将使您的号码在1-5之间。

最好的问候

答案 2 :(得分:-2)

Math.floor(Math.random() * 5)

.random()生成介于0和1之间的随机数,.floor()将数字DOWNWARDS舍入到最接近的整数。