美文网首页
JavaScript 获取整数随机数的二三事

JavaScript 获取整数随机数的二三事

作者: 小菜荔枝 | 来源:发表于2018-05-23 16:29 被阅读0次
JavaScript

需求

最近比较无聊随便写了一些简单的需求,如:获取 0~100 的随机整数。虽然不难,但是实践的过程中还是遇到了一些问题,也学到了一些东西,下面让我们一起来实现这个功能

思考与实现

首先我们知道获取随机数的一个方法 Math.random(),但它是获取 0~1 之间的随机x小数,所以我们可以把这个接口的返回值乘以 100,然后取整就可以实现我们的需求了,于是最初的代码是这样的:

Math.floor(Math.random() * 100); // 其实取的是 0~99
Math.ceil(Math.random() * 100); // 其实取的是 1~100

其实这两个代码都是错误的,一个只能取 0~99,一个只能取 1~100,没关系,发现问题我们解决问题,再改:

Math.floor(Math.random() * (100 + 1)) // 0~100 OK
Math.round(Math.random() * 100) // 0~100 OK 利用round四舍五入

扩展

现在需求难度加大,要写一个方法,传入两个参数,获取这两个参数之间(包括两个参数)的随机整数:

const random = (min, max) => {
  if(isNaN(min) || isNaN(max)) {
    console.log('params is NaN');
    return null;
  } else {
    // 下面这两句代码用哪个都可以
    // return Math.floor(Math.random() * (max - min + 1) + min);
    return Math.round(Math.random() * (max - min) + min);
  }
}

random(1,50) // 获取1~50的随机整数

OK,大工告成~~

简书作者 小菜荔枝 转载请联系作者获得授权

相关文章

  • JavaScript 获取整数随机数的二三事

    需求 最近比较无聊随便写了一些简单的需求,如:获取 0~100 的随机整数。虽然不难,但是实践的过程中还是遇到了一...

  • JavaScript之随机数生成

    Math.random()返回 [0, 1) 之间的随机数。 JavaScript 随机整数Math.random...

  • iOS开发随机数的生成

    使用 arc4random 生成随机数 获取一个随机整数范围在:[0,100)包括0,不包括100 获取一个随机数...

  • ios学记0013-随机数小结

    iOS随机数的基本获取方法 & 注意点 arc4random( )的使用--推荐使用 1. 获取随机整数 2. 获...

  • c++生成随机数

    一.获取均匀分布的随机数###经典方法: rand的机制是根据一个随机数种子(通常是一个整数值,如果没有设置,则为...

  • 华为机试题3

    明明的随机数 说是随机数,其实跟随机数没有半毛钱关系,就是输入一串整数,整数去重,输出排好序的结果 运行结果:

  • js获取高度和宽度方法总结

    javascript获取网页的高度和宽度: 二三八 可视区域宽:document.documentElement....

  • iOS生成四位随机数

    1. 获取一个随机整数范围在:[0,100)包括0,不包括100 2. 获取一个随机数范围在:[500,1000)...

  • 获取不重复的随机数

    来自脚本之家 JavaScript的Math对象提供了random()方法,可以获取一个[0,1)的随机数,利用这...

  • swift 随机数

    获取 Int 类型的随机数 调用方法如下: 获取Float 类型的随机数 调用方法如下: 获取CGFloat 类型...

网友评论

      本文标题:JavaScript 获取整数随机数的二三事

      本文链接:https://www.haomeiwen.com/subject/nxbrjftx.html