js随机数生成1到100整数,编程实现随机生成10个1~100之间的整数

http://www.itjxue.com  2023-01-04 15:43  来源:未知  点击次数: 

我想用JavaScript生成1到100之间的100个不能重复的随机数,不需要排序,只生成100个不

var getRandomArray = function() {

var i = 0,

s = '',

sp = ',',

next;

while (i 100) {

// 产生1-100的随机数

next = Math.random() * 100 + 1;

// 判断产生的数是否在随机数字符串里

if (s.indexOf(next) === -1) {

// 不存在

// 则加上这条

s += next + sp;

// 并且记数器加1

i++;

}

// 否则记数器不加1,继续循环

}

// 最后得到的是xx,xx,形式的字符串

// 因为split函数会保留最后一个分隔符后的数

// 所以通过slice(0,-1)去掉最后一个字符(也就是,号)

// 这样99个分隔符拼成的字符串就会被,号分割

// 成100个随机数组了

return s.slice(0, -1).split(',');

}

alert(getRandomArray());

需要一个JavaScript代码,生成1--100之间的随机数一共一百个,每行显示10个数字,而且这

就是生成无重复随机数了。我跟你说下原理,代码的话你自己就明白了。

每次生成一个随机数,再判断生成的随机数,是否存在于已经生成的随机数群组中,如果存在,则重复执行生成随机数这个动作。

这样就可以保证生成的随机数没有重复。而且位置也没有一定的规律。

我查了下手册,还有一个更简单的方法就是使用函数:shuffle( array array )

该函数的作用是随机打乱一个数组。

这样就简单了,你先生成一个数组(1-100),然后使用此函数将数组随机打乱,这样就生成了无重复的随机数组。

以下代码亲测可行。

?php

$numbers = range(1,100);//生成1-100之间的数组。

srand((float)microtime()*1000000);//建立随机种子

shuffle($numbers);//打乱数组

$i=0;//换行标记

foreach ($numbers as $number) {//遍历数组

$i++;//标记自增

echo "$number ";//输出数值

if($i %10==0) echo "br";//如果输出10个则换行。

}

?

MD写完了,发现你问的是JS的,我回答的是PHP的,不过方法1是通用的。JS中不知道有没有这样的函数。

JS中,输出1-10之间的随机整数,用Math.random()咋搞呢

使用Math.floor(Math.random()*10+1)函数实现。

1、floor():返回小于等于x的最大整数。

2、函数返回一个浮点,? 伪随机数在范围[0,1),也就是说,从0(包括0)往上,但是不包括1(排除1)。实现将初始种子选择到随机数生成算法,它不能被用户选择或重置。

实例演示如下:

1、html代码如下,绑定生成函数:

2、函数代码如下:

2、随机演示效果如下:均为1-10之内的整数。

扩展资料:

生成不重复的10个随机数,可以用数组存储已经生成的数,新生成的数据若不在数组中就满足条件。

1、函数代码如下:

2、同理,绑定一个button用于测试:

2、演示:点击按钮直到产生10个数字。一次随机数据生产如下:(10个不重复)

参考资料:

百度百科--math.random()

(责任编辑:IT教学网)

更多

推荐CMS技巧文章