不了解我的函数/变量的逻辑

时间:2018-09-01 06:45:57

标签: javascript variables

Math.floor(Math.random() * 4)

产生一个0到3之间的随机数。但是,如果我将函数分配给变量“ num”

var num = Math.floor(Math.random() * 4)
console.log(num)

它只会产生数字1。为什么?我希望num是0到3之间的随机数。

2 个答案:

答案 0 :(得分:2)

那是因为赋值仅一次,并且您可能会再次以相同的值打印变量。

您可以执行以下操作,使函数每次调用时都返回一个随机数:

var num = function() {
  return Math.floor(Math.random() * 4);
}
console.log(num());
console.log(num());
console.log(num());

答案 1 :(得分:0)

@karan Dhir给出了很好的答案,但要演示使用您自己的代码段

for(var i=0; i<10;i++){
    var num = Math.floor(Math.random() * 4)
    console.log(num)
}