JS求随机数 Math.floor(Math.random() * (max - min + 1)) + min 理解

第一动力

最近室友想尝试和我买一次彩票(纯好奇),毕竟我涨这么大还没有进入彩票店,于是,计算机专业的我们想自己设计随机数.

行动

于是我找到了求随机数的函数,然后理解了一下:

  1. `function getRandomIntInclusive(min, max) {
  2. min = Math.ceil(min);
    max = Math.floor(max);
    return Math.floor(Math.random() * (max - min + 1)) + min; //含最大值,含最小值 }
    getRandomIntInclusive(1,9)`
    在这里插入图片描述
    Math.random() 产生[0,1)之间的随机数,如图所示:
    在这里插入图片描述
    举个例子:
    我们要求0,10之间的随机数,先通过Math.random() 产生[0,1)之间的随机数,然后乘以最大值 - 最小值,(相当于扩大十倍),在加上最小值,按道理是:
    Math.floor(Math.random() * (max - min)) + min
    但是有一个:Math.floor()函数
    在这里插入图片描述
    如果输入的值是小数,去比这个小数小一点点的整数,所以Math.floor(Math.random() * (max - min + 1)) + min;里面有一个加1

猜你喜欢

转载自blog.csdn.net/qq_44646982/article/details/113306995