如何在javascript中生成1到20之间的5个随机数 [英] How to generate 5 random numbers between 1 to 20 in javascript

查看:261
本文介绍了如何在javascript中生成1到20之间的5个随机数的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

大家好



我正在编写代码,我需要从给定范围生成5个数字(此处介于1到20之间)。



我可以生成一个随机数,如下所示并在循环中运行上面的代码生成5次,这是正确的方法吗?

另外我有时会在最后5个数字中得到相同的数字。



提前致谢。



我尝试过:



Hi Everyone

I am working on a code where I need to generate 5 numbers from a given range (here between 1 to 20).

I could generate one random number as shown below and run the above code in a loop to generate 5 times, is this the right way?
Also I sometimes end up getting same numbers in the final 5 numbers.

Thanks in advance.

What I have tried:

<script type="text/javascript">
    $(document).ready(function () {
        $('#div').html(Math.floor(Math.random() * 6) + 1);

        var arr = [];
        for (var i = 0; i < 5; i++)
        {
            arr.push(Math.floor(Math.random() * 6) + 1)
        }
        console.log(arr);
    });
</script>

推荐答案

document )。ready( function (){
(document).ready(function () {


' #div')。html( Math .floor( Math .random( )* 6 )+ 1 );

var arr = [];
for var i = 0 ; i< 5 ; i ++)
{
arr.push ( Math .floor( Math .random()* 6 )+ 1
}
console .log(arr );
}) ;
< / script>
('#div').html(Math.floor(Math.random() * 6) + 1); var arr = []; for (var i = 0; i < 5; i++) { arr.push(Math.floor(Math.random() * 6) + 1) } console.log(arr); }); </script>


以下代码提取 1..20 范围内的五个数字,重复。

The following code extracts five numbers in the 1..20 range, without repetitions.
var a = [1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20];
var n;
var r=[];
for (n=1; n<=5; ++n)
{
  var i = Math.floor((Math.random() * (20-n)) + 1);
  r.push(a[i]);
  a[i] = a[20-n];
}

您可以尝试此处 [ ^ ]。



此算法描述如下:从甲板上随机抽取5张卡片[ ^ ]。

You might try it here[^].

The algorithm is described here: Random extraction of 5 cards from a deck[^].


这篇关于如何在javascript中生成1到20之间的5个随机数的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆