Java细节之javascript生成不重复的随机数

function randomNum(begin,end){
var num=Math.floor(Math.random()*(end-begin)) + begin;
return num;
}
这是一个生成从begin到end的随机数。
Java细节之javascript生成不重复的随机数_第1张图片

这个才是关键的,让array数组里面的生成的都是不重复的随机数。

Java细节之javascript生成不重复的随机数_第2张图片
那这个函数里面的quesId就是一个js数组,getArray(4,1,10),
代表生4个从1到10的随机数。
原理就是当每次产生一个随机数时,就去search函数判断,若没有则将其放入数组中,若有,则不会放入,进入下一次循环。那循环条件呢,,就是数组的长度大于count之后结束,由于每次加入一个数,,数组长度才会加一,所以getArray函数一定会生成count个随机数。

你可能感兴趣的:(Java细节之javascript生成不重复的随机数)