我想使用 JavaScript 创建一个随机数生成器函数,它将返回一个介于 0 和 1 之间的随机数。是否可以在不使用 Math.random()
的情况下创建自定义随机数生成器函数> 功能?
我试过这种方法。它有效,但我不知道它是真的随机还是有任何规律?
var lastRand = 0.5;
function rand(){
var x = new Date().getTime()*Math.PI*lastRand;
var randNum = x%1;
lastRand = randNum;
return randNum;
}
// Output
for(var n = 0; n < 50; n++){
console.log(rand());
}
此函数依赖于变量lastRand
来生成数字。但我想要更有效的方法。
最佳答案
为什么不这样?这对我来说似乎更随机,因为它不依赖于值。
var lastRand, randNum;
function rand(){
while(randNum == lastRand)
randNum = (new Date().getTime()*Math.PI)%1;
return lastRand = randNum;
}
// Output
for(var n = 0; n < 50; n++)
console.log(rand());
关于javascript - 如何在不使用 Math.random() 函数的情况下使用 JavaScript 创建随机数生成器函数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55420500/