function sleep(n){
var start=new Date().getTime()//定义起始时间的毫秒数
while(true){
var time=new Date().getTime()//每次执行循环取得一次当前时间的毫秒数
if(time-start>n){//如果当前时间的毫秒数减去起始时间的毫秒数大于给定的毫秒数,即结束循环
break
}
}
}
function test(n){//用这个函数测试吧
for(var i=0i<3i++){
alert(i)
sleep(5000)//每隔5000毫秒执行一次for循环
}
}
首先javascript不是进程型的程序设计语言,它无法准确滴使一个函数执行5秒钟(时间段)但可以通过window.setInterval, window.setTimeout来模拟,比如:假设要在5秒钟内不断运行函数A:function A(){
// ......some code
}
var timer = window.setInterval("A",500)
window.setTimeout(function(){window.clearInterval(timer)},5000)
记住:不要让程序进入一段循环以完成一项任务,这样会使浏览器停止响应而影响用户体验,而要让一个任务在指定时间内间歇执行,并在五秒钟后取消程序间隔调用