js如何生成指定范围内的随机数

JavaScript010

js如何生成指定范围内的随机数,第1张

function getarrayitems(arr, num) {

//新建一个数组,将传入的数组复制过来,用于运算,而不要直接操作传入的数组

var temp_array = new array()

for (var index in arr) {

temp_array.push(arr[index])

}

//剔除一些数字

//取出的数值项,保存在此数组

var return_array = new array()

for (var i = 0i

//判断如果数组还有可以取出的元素,以防下标越界

if (temp_array.length>0) {

//在数组中产生一个随机索引

var arrindex = math.floor(math.random()*temp_array.length)

//将此随机索引的对应的数组元素值复制出来

return_array[i] = temp_array[arrindex]

//然后删掉此索引的数组元素,这时候temp_array变为新的数组

temp_array.splice(arrindex, 1)

} else {

//数组中数据项取完后,退出循环,比如数组本来只有10项,但要求取出20项.

break

}

}

return return_array

}

var my_array = new array()

for (i = mini <maxi++) //max,min指定范围

{

my_array[i] = i

}

my_array = getarrayitems(my_array,1000)//得到数组

function rand(u,d){

++d

return parseint(math.random()*(u-d)+d)

}

参考代码:

<script language="javascript">

/**

* 随机数

*/

document.write(Math.floor(Math.random()*1000+1000))  //输出1000~2000之间的随机整数

</script>

在javascript中输入函数Math.floor(Math.random()*10+1)。

在原来的函数上再加1就变成了Math.random()*10+1。此时就可以返回1到10的随机数了,但是我们返回的很多是小数,不符合要求。

下面就用到了Math.floor()这个函数了,这个函数执行向下舍入,也就是说10.99经过Math.floor都是10,Math.ceil(是向上舍入)即使是10.00001,返回也是11,现在我们就求出来结果了。

随机数是专门的随机试验的结果。在统计学的不同技术中需要使用随机数,比如在从统计总体中抽取有代表性的样本的时候,或者在将实验动物分配到不同的试验组的过程中,或者在进行蒙特卡罗模拟法计算的时候等等。

产生随机数有多种不同的方法。这些方法被称为随机数发生器。随机数最重要的特性是:它所产生的后面的那个数与前面的那个数毫无关系。