【发布时间】:2020-05-23 09:01:20
【问题描述】:
为什么在三个 console.log 中我得到的数字是 17 到 70,000
但是在循环中,y 总是在 200 到 800 之间?
console.log("RND " + Math.floor(Math.random()*5000)*17)
console.log("RND " + Math.floor(Math.random()*5000)*17)
console.log("RND " + Math.floor(Math.random()*5000)*17)
let y=0;
for (let x = 0; x < Math.floor(Math.random()*5000)*17; x++) {
y++
}
console.log("y " + y)
random() 在 for 循环中的工作方式有什么不同吗?
【问题讨论】:
-
Math.floor(Math.random()*5000)*17 正在为每次迭代执行,并给出不同的随机值。我想这就是原因。
-
啊!!哈哈哈我没想到!! - 我会立即测试:D
-
@TulshiDas 你会如何测试它?
-
我尝试了 100 个循环,并在 1 和 1000 之间进行随机化,其中大多数最终都低于 10 :D 所以是的 - 这是正确的!做一个答案,这样我就可以给你点:)
标签: javascript