javascript中setTimeout 和 setInterval 的区别

本文深入解析JavaScript中的setTimeout和setInterval方法的区别与用法,包括具体语法、参数说明以及实际应用示例。重点突出如何利用这两个方法实现倒计时功能,并通过实例演示了如何使用setTimeout进行倒计时以及如何使用setInterval实现循环执行任务。

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

window对象有两个主要的定时方法,分别是setTimeout 和 setInterval   他们的语法基本上相同,但是完成的功能却有区别。
  setTimeout方法是定时程序,也就是在什么时间以后干什么。干完了就拉倒。

  setInterval方法则是表示间隔一定时间反复执行某操作。

js setTimeout()函数 [倒计时用]

   定义和用法:
      
       setTimeout() 方法用于在指定的毫秒数后调用函数或计算表达式。

  语法:
   
       setTimeout(code,millisec)

  参数:

   code (必需):要调用的函数后要执行的 JavaScript 代码串。

   millisec(必需):在执行代码前需等待的毫秒数。

  提示:

   setTimeout() 只执行 code 一次。如果要多次调用,请使用 setInterval() 或者让 code 自身再次调用 setTimeout()。

  举例:

<script language="javascript">
   function timer(){

        var value=Number(document.all['time'].value);
       if (value>1) document.all['time'].value=value-1;
        else {
          document.all['time'].value="同意";
          return false;
       }
       window.setTimeout("timer()",1000);

}
</script>
<body onload="timer()">
<input name="time" value="10" type="button" style="width:40px;" />
</body>


js setInterval()函数 [倒计时用]

定义和用法:
      
       setInterval() 方法用于在指定的毫秒数后调用函数或计算表达式。它与setTimeout()方法不同的是前者可以无限的循环,不会受调用函数的限制,要想退出此循环可以使用clearInterval()方法,可以使用返回值为现在要设置的这个对象;

  语法:
    
       setInterval(code,millisec)

  参数:

   code (必需):要调用的函数后要执行的 JavaScript 代码串。

   millisec(必需):在执行代码前需等待的毫秒数。

  举例:


<script language="javascript">
function timer(){

var value=Number(document.all['time'].value);
if(value==2){
     timeID=window.setInterval("change()",1000);
clearInterval(timeID);
}
else window.setInterval("change()",1000);
}

function change(){

var value=Number(document.all['time'].value);
if (value>1) document.all['time'].value=value-1;
else {
    document.all['time'].value="同意";
return false;
}
}
</script>


<body onLoad="timer()">
<input name="time" value="10" type="button" style="width:40px;" />
</body>

详细的文字解释请参阅:http://blog.163.com/yong5123@126/blog/static/4551606220110613442141/

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值