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

javascriptweb developmentfront end technology

要生成随机数,我们使用 Math.random() 函数。此方法返回范围在 0(含)1(不含) 之间的浮点数。要生成不同范围内的随机数,我们应该定义范围的最小值和最大值。请遵循下面的第二种语法。

要生成随机整数,您可以遵循下面讨论的第三和第四种语法。

由于 Math.random() 方法为我们提供了一个随机浮点数,因此要将结果转换为整数,我们需要应用一些基本的数学知识。请遵循以下语法。

语法

以下是在两个数字之间生成随机数的语法 -

  • 0(含)和 1(不含)之间生成一个随机数。

MMath.random()
  • 在两个数字之间生成一个随机数。

Math.random() * (max-min) + min);
  • 在两个数字 minmax 之间生成一个随机整数(min 和 max 均包含在内)。

Math.floor(Math.random() * ((max-min)+1) + min);
  • 在两个数字 minmax 之间生成一个随机整数(min 包含在内,max 不包含在内)。

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

此处 minmax 是我们想要生成随机数的起始数字和终止数字。

示例 1

生成一个介于 0(含)和 1(不含)之间的随机数。

在下面的示例中,我们生成一个介于 0 和 1 之间的随机数。此处 0 含,1 不含。

<html> <body> <h3>Genrate a random number between 0 (inclusinve) and 1 (exclusinve)</h3> <p id="result"></p> <script> var random = Math.random(); document.getElementById("result").innerHTML = random; </script> </body> </html>

示例 2

生成 0(含)和 1(不含)之间的多个随机数。

在下面的例子中,我们生成 0 到 1 之间的 10 个随机数。这里 0 是含的,1 是不含的。

<html> <body> <h3>Genrate 10 random numbers between 0 (inclusinve) and 1 (exclusinve)</h3> <p id="result"></p> <script> for(var i =0; i < 10; i++){ var random = Math.random(); document.getElementById("result").innerHTML += random + "<br>"; } </script> </body> </html>

示例 3

生成两个数字之间的随机数。

在下面的例子中,我们生成一个介于 20 和 50 之间的随机数。

<html> <body> <h3>Genrate a random number between 20 and 50</h3> <p id="result"></p> <script> var min = 20; var max = 50 var random = Math.random() * (max - min) + min; document.getElementById("result").innerHTML += random ; </script> </body> </html>

示例 4

在两个数字之间生成多个随机数。

在下面的示例中,我们生成 20 到 50 之间的 10 个随机数。

<html> <body> <h3>Genrate 10 random number between 20 and 50</h3> <p id="result"></p> <script> var min = 20; var max = 50; for(var i =0; i < 10; i++){ var random = Math.random() * (max - min) + min; document.getElementById("result").innerHTML += random + "<br>"; } </script> </body> </html>

请注意,到目前为止,生成的随机数都是浮点数。现在让我们看看如何生成随机整数。

示例 5

生成两个数字之间的随机整数。

在下面的例子中,我们生成一个介于 10 和 100 之间的随机整数。

<html> <body> <h3>Genrate a random integer between10 and 100</h3> <p id="result"></p> <script> function randomInt(min, max) { min = Math.ceil(min); max = Math.floor(max); return Math.floor(Math.random() * (max - min)) + min; } document.getElementById("result").innerHTML = randomInt(10,100); </script> </body> </html>

示例 6

在下面的示例中,我们从用户那里获取两个数字。我们在这两个数字之间生成一个随机数。

<html> <body> <h3>Generate Random Number Using JavaScript</h3> <div style="display: inline-block;">Random Number Between <input type="text" class="start"> and <input type="text" class="end"></div> <br /><br /> <input type="button" value="Get Number" onclick="getRandomNumber();"> <p class="number"></p> <script> function getRandom(start,end){ return Math.floor(Math.random()*(end-start+1))+start; } function getRandomNumber(){ var start = document.getElementsByClassName('start')[0].value; var end = document.getElementsByClassName('end')[0].value; document.getElementsByClassName('number')[0].innerHTML = 'The Random Number is : <span class="highlight">'+getRandom(parseInt(start),parseInt(end))+'</span>'; } </script> </body> </html>

示例 7

在两个数字之间生成许多随机整数。

在下面的示例中,我们生成 10 到 100 之间的 10 个随机整数。

<html> <body> <h3>Generate 10 random integers between 10 and 100</h3> <p id="result"></p> <script> function randomInt(min, max) { min = Math.ceil(min); max = Math.floor(max); return Math.floor(Math.random() * (max - min)) + min; } for (var i = 0; i < 10; i++) { document.getElementById("result").innerHTML += randomInt(10, 100) + "<br>"; } </script> </body> </html>

在本教程中,我们讨论了在两个数字之间生成随机数的方法。我们了解了如何在两个数字之间生成单个以及多个随机数。我们生成的随机数为浮点数和整数。


相关文章