为什么在循环中调用 Math.random() 会生成相同的随机数?

为什么在循环中调用 math.random() 会生成相同的随机数?

为何遍历中 math.random() 为何生成相同数据?

当在遍历中使用 math.random() 函数时,很容易遇到生成的数据相同的情况。这是因为每次调用此函数时,它都会从同一种子开始。

解决方案

为了解决这个问题,需要改变生成随机数的种子。可以使用 date.now() 方法获取当前时间,将其作为种子传递给 math.random() 函数。

el.push(Math.random(Date.now()));
practical.push(Math.random(Date.now()));

这样,每次调用 math.random() 函数时都会生成不同的值。

以上就是为什么在循环中调用 Math.random() 会生成相同的随机数?的详细内容,更多请关注www.sxiaw.com其它相关文章!