计时器 setTiemout与setInterval区别

实际上,setTimeout与setInterval的语法相同。它们都有两个参数,一个是将要执行的代码字符串,还有一个是以毫秒为单位的时间间隔。当过了那个时间段之后将执行那段代码。
不过这两个函数还是用区别的,setInterval 是在执行完一次代码之后,经过固定的时间段后继续重复执行那段代码,而setTimeout 只是执行一次那段代码。
两个都可以重复执行,循环调用:

showTime();
function showTime()
{
	var Today = new Date();
	window.status = "The time is "+Today.toString();
	setTimeout("showTime()",5000);
}
//一旦调用这个函数1秒钟就会显示一次时间


setInterval("showTime_()",5000);
function showTime_()
{
	var Today = new Date();
	window.status = "The time is "+Today.toString();
}
这两种方法可能看起来非常像,显示结果也会相似,不过区别是,setTimeout不会每隔5秒钟就会执行一次showTime()函数,它是在每次调用完setTimeout过5秒钟后再去执行showTime函数。这就意味着如果showTime主体部分需要2秒钟执行完,那么整个函数每7秒钟才执行一次。而setInterval却没有被自己所调用的函数所束缚,它只是简单的每隔一段时间就重复执行一次那个函数。
因此如果要求每隔一段固定时间间隔后就精确地执行某个动作,最好使用setInterval。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值