我使用以下代码
function getRandomInt(min, max) {
return Math.floor(Math.random() * (max - min + 1)) + min;
}
拿出一个随机数。但是,这并没有给我一个随机分布。有没有人知道在javascript中提出随机数的更好方法?
答案 0 :(得分:0)
您的代码中存在错误,Math.floor(Math.random()) *
应为Math.floor(Math.random() *
。除此之外,如果你看一个足够大的样本大小,例如100,000,它看起来非常接近我。
function getRandomInt(min, max) {
return Math.floor(Math.random() * (max - min + 1)) + min;
}
var total = 0, count = 100000;
for(var i = 0; i<count; i++){
total += getRandomInt(1,100);
}
console.log("Expected: 50.5");
console.log("Actual: "+(total / count));
&#13;