协慌网

登录 贡献 社区

在 JavaScript 中生成两个数字之间的随机数

有没有办法在 JavaScript 中生成指定范围内的随机数(例如 1 到 6:1,2,3,4,5 或 6)?

答案

function randomIntFromInterval(min,max) // min and max included
{
    return Math.floor(Math.random()*(max-min+1)+min);
}

它所做的 “额外” 是允许随机间隔不以 1 开头。因此,您可以获得 10 到 15 之间的随机数。灵活性。

如果你想得到 1 到 6 之间,你会计算:

Math.floor(Math.random() * 6) + 1

哪里:

  • 1 是起始编号
  • 6 是可能结果的数量(1 + start (6) - end (1)

的 Math.random()

Mozilla Developer Network 文档中:

// Returns a random integer between min (include) and max (include)

Math.floor(Math.random() * (max - min + 1)) + min;

有用的例子:

// 0 -> 10
Math.floor(Math.random() * 11);

// 1 -> 10
Math.floor(Math.random() * 10) + 1;

// 5 -> 20
Math.floor(Math.random() * 16) + 5;

// -10 -> (-2)
Math.floor(Math.random() * 9) - 10;