美文网首页程序员
生成五个不同的随机数

生成五个不同的随机数

作者: 马大哈tt | 来源:发表于2017-08-18 22:49 被阅读0次

对于生成几个互不相同的随机数应用的还挺广泛的,接触js还没多长时间,给大家分享两种方法来生成不重复的随机数。

1.使用indexOf方法巧妙的实现

代码示例如下:

主要代码

使用while循环语句控制随机数的个数,首先定义一个arr数组作为一个容器承载随机数,运用Math.random()*10生成1~10的随机数,使用indexOf方法去除相同的随机数。indexOf方法返回第一次出现子字符串的字符位置,它返回的是一个整数值,当返回值为-1时,表示没有此字符串。所以arr.indexOf(num) == -1的意思是当arr中没有此字符的时候将随机数存入arr中,能实现生成5个不同的随机数。

运行结果

此外给大家分享一个在max(最大数)和min(最小数)范围之间的随机数公式:

var ran = Math.random()*(max-min)+min;

2.使用while循环来实现

示例代码如下:

主要代码

定义五个变量a,b,c,d,e承接生成的五个随机数,使用while循环来实现,大体思路如下:随机数a作为第一个数,第二个while循环是:当a == b; b在重新生成随机数直到与a 不同时,保存b; 第三个while循环是:当c与a,b其中一个相同时,重新生成随机数c,直到c与a,b都不相同时,保存c;以此类推;实现每个随机数都互不相同。

这种方法是我才学js的几个循环时根据自己的逻辑写出来,虽然也能实现效果,但没有第一种方法好,第一种方法一是代码量少,还有适用范围广,像第二种当需要生成的随机数过多时就不适用。

相关文章

  • Qt 随机数

    Qt 随机数 相关函数 以上为伪随机数[1],不同在于qsrand()可以根据种子值seed的值不同,来生成不同的...

  • Random Number

    随机数生成 如下每次执行 sess.run(random) 都会生成不同的随机数 随机初始化 如上所定义的para...

  • 生成随机6个不重复双色球并写一个冒泡排序算法

    首先我们生成6个不同的随机数我们利用set结构能去除重复的这个特性,来去重 第一步生成了6个不同的随机数,然后我们...

  • 生成随机数

    两个C函数 rand()函数生成的随机数是伪随机数,所谓伪随机数,指的是程序每次运行,生成的随机数都是不变的,生成...

  • 在以太坊生成随机数的几种方式(含代码)

    一、什么是随机数 随机数都是由随机数生成器(Random Number Generator)生成的。随机数分为”真...

  • web老虎机

    生成三个随机数 检查随机数是否全部相等 更新老虎机数字 根据不同的数字更新图片

  • 五、lodash经常使用的函数

    _.range(10) 生成0到9随机数_.uniqueId() 生成不同的id,用于元素中的id值再好不过_....

  • PHP生成随机数

    PHP生成随机数,相信大家在做项目的时候是最常见的吧。js生成随机数,PHP生成随机数。 应用场景:用户注册/登录...

  • Golang生成随机数的方法总结

    生成区间随机数 生成指定区间随机数(包括纯数字/纯字母/随机)

  • Excel怎么生成随机数?

    Excel怎么生成随机数?如何生成指定范围内的随机数呢?可以在Excel中使用函数,生成随机数。 1、在单元格中输...

网友评论

    本文标题:生成五个不同的随机数

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