定时器

Timer

Node中定时器都是全局方法,无需通过require引入。

常量API

javaScri中常用的timer方法有两个,分别是setTimeout和cetInterval,在Node中setTimeout和cetInterval都属于Timerout类,调用对应的方法后都会返回对应的对象。
除了着来年各个对象外,node还提出了serImmediate方法(这里不做介绍)

  1. setTimeout

一个使用setTimeout方法最简单的例子是延迟一个函数的执行时间,下面是一个例子:

1
2
3
setTImeout(function (){
console.log("Hello Node");
},5000);

如果想要在回调执行前清除定时器,可以使用clearTimeout方法:

1
2
3
4
var tiomeout = setTImeout(function (){
console.log("Hello Node");
},5000);
cleanTimeout(tiomeout);//Hello Node不会打印
  1. setInterval

如果想要一个固定的事件间隔来运行回调函数,可以使用setInterval方法,使用方法和setTimeout相同,代码如下:

1
2
3
setInterval(function (){
console.log("Hello Node");
},5000);

运行后会以设置的时间间隔输出打印,同样可以 使用cleanInterval方法来清除定时器:

1
2
3
4
5
6
7
var i=0;
var interval = setInterval(function (){
console.log("Hello Node");
if(++i =10){
cleanInterval(interval);
}
},5000);