所以这里我们得到一个介于0和1之间的随机数并将其向下舍入,所以它总是等于0对吗?
var random = Math.floor(Math.random());
然后在这里我们将它乘以5.所以肯定0 * 5总是等于0?
var random = Math.floor(Math.random() * 5);
那么它如何返回1到5之间的数字?
由于
答案 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舍入到最接近的整数。