setTimeout 和 setInterval 的区别

本文详细介绍了JavaScript中的两种定时器:setTimeout和setInterval。setTimeout用于在指定时间后执行一次任务,而setInterval则按固定时间间隔重复执行任务。此外,还提供了如何使用setTimeout模拟setInterval效果的示例代码。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

[url]http://www.cnblogs.com/tuyile006/archive/2008/02/18/1072748.html[/url]
setTimeout (表达式,延时时间)
setInterval(表达式,交互时间)
延时时间/交互时间是以豪秒为单位的(1000ms=1s)

setTimeout 在执行时,是在载入后延迟指定时间后,[color=red]去执行一次表达式,仅执行一次[/color]
setInterval 在执行时,它从载入后,[color=red]每隔指定的时间就执行一次表达式[/color]

set Timeout 也可以实现象setInterval一样的功能
set Timeout:
<script language="javascript">
var i;
i=0;
function reloop()
{
i=i+1;
alert(String(i));
setTimeout("reloop()",1000);
}
reloop();
</script>


setInterval:

<script language="javascript">
var i;
i=0;
function reloop()
{
i=i+1;
alert(String(i));
}
setInterval("reloop()",1000);
</script>


window对象有两个主要的定时方法,分别是setTimeout 和 setInteval 他们的语法基本上相同,但是完成的功能取有区别。
setTimeout方法是定时程序,也就是在什么时间以后干什么。干完了就拉倒。
setInterval方法则是表示间隔一定时间反复执行某操作。

  如果用setTimeout实现setInerval的功能,就需要在执行的程序中再定时调用自己才行。如果要清除计数器需要 根据使用的方法不同,调用不同的清除方法:

例如:
tttt=setTimeout(@#northsnow()@#,1000);
clearTimeout(tttt);


或者:
tttt=setInterval(@#northsnow()@#,1000);
clearInteval(tttt);


举一个例子:

<div id="liujincai"></div>
<input type="button" name="start" value="start" onclick=@#startShow();@#>
<input type="button" name="stop" value="stop" onclick="stop();">
<script language="javascript">
var intvalue=1;
var timer2=null;
function startShow()
{
liujincai.innerHTML=liujincai.innerHTML + " " + (intvalue ++).toString();
timer2=window.setTimeout("startShow()",2000);
}
function stop()
{
window.clearTimeout(timer2);
}
</script>
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值