SetTimeout 和 SetInterval 的区别

作者:源码世界时间:2014-08-19分类:JavaScript评论:0浏览:5477


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();"> 
<mce: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); 
} 
// --></mce:script> 
<!-- 或者: --> 
<div id="liujincai"> 
	<input type="button" name="start" value="start" onclick='timer2=window.setInterval("startShow()",2000);//startShow();'> 
	<input type="button" name="stop" value="stop" onclick="stop();"> 
</div>
<mce:script language="javascript"><!--
 
	var intvalue=1; 
	var timer2=null; 
	function startShow() 
	{ 
		liujincai.innerHTML=liujincai.innerHTML + " " + (intvalue ++).toString(); 
	} 
	function stop() 
	{ 
		window.clearInterval(timer2); 
	} 
// --></mce:script> 
<DIV id=jnkc style="height:1px;">
	ps 用setInterval显示时间:
	<ul> 
	<li> 
	<SCRIPT>
		setInterval("jnkc.innerHTML=new Date().toLocaleString()+' 周'+'日一二三四五六'.charAt(new Date().getDay());",1000); 
	</SCRIPT> 
	</li> 
	</ul>
</DIV> 

如果您没有找到适合你的解决方案,请联系我们寻求帮助支付鼓励

返回顶部
分享按钮