怎么用js做随机点名

JavaScript013

怎么用js做随机点名,第1张

关键是随机数的实现(伪随机)

function myRand(start, end) {

return start + Math.round((Math.random() * (end - start)))

}

这个函数可以得到start到end之间(包括start和end)的随机数,然后根据随机数去点名

<script defer="defer">

var arr=new Array("张三","李四","王二","陈一","哈哈")

var n

var num

var timer

function change(){

if(num>=0){

n=GetRnd(0,num)

alert(arr[n])

arr.splice(n,1)

num = arr.length-1

}else{

alert("点完了")

clearInterval(timer)

}

}

function start(){

num = arr.length-1

clearInterval(timer)

timer = setInterval('change()',40)

}

function GetRnd(min,max){

return parseInt(Math.random()*(max-min+1))

}

</script>

<input type="submit" name="button" id="button" value="开始点名" onclick="start()" />

<script language="javascript">

var num=13//假设有13个同学

var name=new array( )

var aaa=new array( )//定义两个数组

for(var i=0i<numi++){

name[i]=“姓名"+i

}//把同学名字放进name数组

for(var i = 0i<numi++)

{

var j = Math.floor((num-i)*Math.random())//获取小于13的随机数

aaa.push(name[j])//往aaa数组添加name数组的数据

name.splice(j,1)//把name数组里的数据删掉

}

document.write(aaa.join("<br>"))数组里每个元素增加一个换行。

</script>

不懂可追问。