Rumah  >  Artikel  >  hujung hadapan web  >  JavaScript定时器中关于setTimeout()与setInterval()的详解

JavaScript定时器中关于setTimeout()与setInterval()的详解

黄舟
黄舟asal
2017-08-20 10:12:381645semak imbas

这篇文章主要为大家详细介绍了JavaScript定时器setTimeout()和setInterval()的相关资料,具有一定的参考价值,感兴趣的小伙伴们可以参考一下

本文实例为大家分享了JavaScript定时器的具体方法,供大家参考,具体内容如下

1、 超时调用setTimeout()

顾名思义,超时调用的意思就是在一段实际之后调用(在执行代码之前要等待多少毫秒)

setTimeout()他可以接收两个参数:

1.要执行的代码或函数

2.毫秒(在执行代码之前要等待多少毫秒)


function test(){
  alert("孙悟空");
}
setTimeout(test,2000);  //2s后弹出 “孙悟空”

clearTimeout()

clearTimeout,表示清除定时器,可以用它取消未执行的调用


var timmer=function test(){
  alert("孙悟空");
}
setTimeout(test,2000); //2s后弹出 “孙悟空”    
clearTimeout(timmer); //取消定时器,因为前者在两秒后调用,调用之前已经取消相当于什么也没发生

2、间歇调用setInterval()

间歇调用就是指定的时间内不断地重复执行代码,大白话就是“一会调用一次,一会调用一次”

setInterval()它也接收两个参数,与前者相同:

1.要执行的代码或函数

2.毫秒(在执行代码之前要等待多少毫秒)


function test(){
  alert("孙悟空");
}
setInterval(test,2000);  //每隔2s后弹出一次 “孙悟空”

clearInterval()

clearInterval()与clearTimeout()使用方法相同,也是清除定时器方法


var num=0;
var max=10;
function test(){
  num++;
  if (num==max){
    clearInterval(timer);  //累加到10时清除清定时器
    alert("这里有"+num+"个孙悟空");  //这里有10个孙悟空
  }
}
timer=setInterval(test,500);

 在上面的例子中,变量num每隔0.5s递增一次,当递增到最大值时就会清除先前设置的定时器(间歇调用)。

这个模式也可以用超时调用来实现


var num=0;
var max=10;
function test(){
  num++;
  if (num<max){
    setTimeout(test,500);
  }else{
    alert("这里有"+num+"个孙悟空")
  }
}
setTimeout(test,500);

Atas ialah kandungan terperinci JavaScript定时器中关于setTimeout()与setInterval()的详解. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn