侧边栏壁纸
博主头像
M酷博主等级

一帆风顺 ⛵️⛵️⛵️

  • 累计撰写 45 篇文章
  • 累计创建 40 个标签
  • 累计收到 464 条评论

目 录CONTENT

文章目录

JS中生成指定范围随机数

M酷
2021-01-19 / 0 评论 / 5 点赞 / 4,202 阅读 / 1,206 字 / 正在检测是否收录...
广告 广告

😄在日常工作中,我们经常会需要生成一些随机数,相信大家最熟悉的就是 Math.random() 这个api,本文将介绍生成指定范围随机数的方法。


😏首先我们复习一下这几个api,后面会用到:
1、Math.random()
返回一个0~1之间的浮点数,包含0,不包含1,您可以缩放到所需的范围,实现将初始种子选择到随机数生成算法,它不能被用户选择或重置。

2、Math.floor()
返回一个小于或等于给定数字的最大整数

3、Math.ceil()
返回一个大于或等于给定数字的最小整数

4、Math.round()
返回一个数字四舍五入之后的整数形式

相关api还有很多,适合不同使用场景,具体可参阅 MDN

这里以生成m到n之间的随机数为例。

一、生成m到n之间的数字,不包含m和n

const genBetween = (m, n) => Math.round(Math.random() * (n - m - 2)) + m + 1;

二、生成m到n之间的数字,包含m和n

const genBetweenAll = (m, n) => Math.floor(Math.random() * (n - m + 1)) + m;

三、生成m到n之间的数字,包含m,不包含n

const genBetweenLeft = (m, n) => Math.floor(Math.random() * (n - m)) + m;

四、生成m到n之间的数字,不包含m,包含n

const genBetweenRight = (m, n) => Math.floor(Math.random() * (n - m) + 1) + m;

附上一些好用的工具:

在线随机数字/字符串生成
高强度密码生成器
utools

参考文章

JS生成某个范围的随机数【四种情况详解】

5
广告 广告

评论区