迹忆客 专注技术分享

当前位置:主页 > 学无止境 > WEB前端 > JavaScript >

如何用 JavaScript 在两个数字之间生成一个随机数

作者:迹忆客 最近更新:2023/03/10 浏览次数:

本教程将学习如何用 JavaScript 在两个数字之间生成一个随机数。我们将使用 Math.random() 方法在 0.00.999 之间生成一个随机浮动数。

我们可以在 JavaScript 中使用随机数生成器-Math.random(),通过将生成的浮点数与我们想要生成的最大数字相乘来生成一个随机数。Math.random()* max 生成一个 0 和 max 之间的随机数。

function generateRandom(max){
    return Math.random() * max;
}

console.log("1st try: "+generateRandom(5));
console.log("2nd try: "+generateRandom(5));
console.log("3rd try: "+generateRandom(5));
console.log("4th try: "+generateRandom(5));

输出:

1st try: 3.3202340813091347
2nd try: 1.9796467067025836
3rd try: 3.297605748406279
4th try: 1.1006700756032417

如果我们只想得到整数格式的结果,我们可以使用 Math.floor(),这个方法返回小于或等于输入数的最大整数。

console.log(Math.floor(1.02));
console.log(Math.floor(1.5));
console.log(Math.floor(1.9));
console.log(Math.floor(1));

输出:

1
1
1
1

通过使用 Math.floor() 方法,我们可以得到随机生成的整数。

function generateRandomInt(max){
    return Math.floor(Math.random() * max);
}

console.log("1st Integer try: "+generateRandomInt(9));
console.log("2nd Integer try: "+generateRandomInt(9));
console.log("3rd Integer try: "+generateRandomInt(9));
console.log("4th Integer try: "+generateRandomInt(9));

输出:

1st Integer try: 8
2nd Integer try: 5
3rd Integer try: 7
4th Integer try: 0

如果我们还想有一个用户定义的最小值,我们需要将 Math.random() * max 的公式改为 Math.random() * (max-min)) +min。使用该等式,返回值是介于 minmax 之间的随机数。

function generateRandomInt(min,max){
    return Math.floor((Math.random() * (max-min)) +min);
}

console.log("1st min and max try: "+generateRandomInt(2,9));
console.log("2nd min and max try: "+generateRandomInt(2,9));
console.log("3rd min and max try: "+generateRandomInt(2,9));
console.log("4th min and max try: "+generateRandomInt(2,9));

输出:

1st min and max try: 6
2nd min and max try: 2
3rd min and max try: 8
4th min and max try: 3

如果我们有兴趣让 max 值包含在我们的随机发生器范围内,我们需要将等式改为 (Math.random() * (max+1 - min)) +min。在 max-min 上加 1 将包括范围内的最大值,而 Math.floor() 将始终保证该值不超过 max

function generateRandomInt(min,max){
    return Math.floor((Math.random() * (max+1 -min)) +min);
}

console.log("1st min and max included try: "+generateRandomInt(2,9));
console.log("2nd min and max included try: "+generateRandomInt(2,9));
console.log("3rd min and max included try: "+generateRandomInt(2,9));
console.log("4th min and max included try: "+generateRandomInt(2,9));

输出:

1st min and max included try: 3
2nd min and max included try: 7
3rd min and max included try: 9
4th min and max included try: 6

转载请发邮件至 1244347461@qq.com 进行申请,经作者同意之后,转载请以链接形式注明出处

本文地址:

相关文章

扫一扫阅读全部技术教程

社交账号
  • https://www.github.com/onmpw
  • qq:1244347461

最新推荐

教程更新

热门标签

扫码一下
查看教程更方便