JavaScript定时器setTimeout()和setInterval()详解

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);

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/wydzdg.html