javascript循环如何让他每间隔5秒循环一次

JavaScript012

javascript循环如何让他每间隔5秒循环一次,第1张

javascript没有类似Thread中的sleep()方法,只能模拟一个这个方法实现。

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)

记住:不要让程序进入一段循环以完成一项任务,这样会使浏览器停止响应而影响用户体验,而要让一个任务在指定时间内间歇执行,并在五秒钟后取消程序间隔调用