Node.js - Timer模块

Node.js - Timer模块 首页 / Node.js入门教程 / Node.js - Timer模块

Node.js Timer函数是全局函数。您无需使用require()函数即可使用计时器函数。让无涯教程看看timer函数列表。

设置timer函数:

  • setimmediate()   -  它用于执行setImmediate。
  • setInterval()         -  它用于定义时间间隔。
  • settimeout()         -  它用于在延迟毫秒后执行一次回调。

清除timer函数:

  • clearImmediate(imberiatiedObject)   -  它用于停止由setImmediate创建的对象
  • clearInterval(intervalObject)                 -  它用于停止由setInterval创建的对象
  • clearTimeout(timeoutObject)                -  它用于停止由setTimeout创建的对象

setInterval()

此示例将设置1000毫秒的时间间隔,每1000毫秒调用一次。

文件:timer1.js.

setInterval(function() {
 console.log("setInterval: Hey! 1 millisecond completed!.."); 
}, 1000);

打开node.js命令提示符并运行以下代码:

node timer1.js
Node.js timer example 1

文件:timer5.js.

var i =0;
console.log(i);
setInterval(function(){
i++;
console.log(i);
}, 1000); 

打开node.js命令提示符并运行以下代码:

node timer5.js
Node.js timer example 22

setTimeout()

文件:timer1.js.

setTimeout(function() { 
console.log("setTimeout: Hey! 1000 millisecond completed!..");
}, 1000);

打开node.js命令提示符并运行以下代码:

node timer1.js
Node.js timer example 21

本示例显示每隔1000毫秒超时,但未设置时间间隔。本示例使用函数的递归属性。

文件:timer2.js.

var recursive = function () {
    console.log("Hey! 1000 millisecond completed!.."); 
    setTimeout(recursive,1000);
}
recursive(); 

打开node.js命令提示符并运行以下代码:

node timer2.js
Node.js timer example 23

setInterval(),setTimeout()和clearTimeout()

让无涯教程看一下一个例子来使用clearTimeout()函数。

文件:timer3.js.

function welcome () {
  console.log("Welcome to Learnfk!");
}
var id1 = setTimeout(welcome,1000);
var id2 = setInterval(welcome,1000);
clearTimeout(id1);
//clearInterval(id2);

打开node.js命令提示符并运行以下代码:

node timer3.js
Node.js timer example 3

您可以看到上面的示例本质上是递归的。如果使用ClearInterval,它将在一步之后终止。

setInterval(),setTimeout()和clearInterval()

让无涯教程看一个使用clearInterval()函数的示例。

文件:timer3.js.

function welcome () {
  console.log("Welcome to Learnfk!");
}
var id1 = setTimeout(welcome,1000);
var id2 = setInterval(welcome,1000);
//clearTimeout(id1);
clearInterval(id2);

打开node.js命令提示符并运行以下代码:

node timer3.js
Node.js timer example 33

祝学习愉快!(内容编辑有误?请选中要编辑内容 -> 右键 -> 修改 -> 提交!)

技术教程推荐

从0开始学架构 -〔李运华〕

OpenResty从入门到实战 -〔温铭〕

苏杰的产品创新课 -〔苏杰〕

Service Mesh实战 -〔马若飞〕

如何落地业务建模 -〔徐昊〕

手把手带你写一个Web框架 -〔叶剑峰〕

快手 · 移动端音视频开发实战 -〔展晓凯〕

Python实战 · 从0到1搭建直播视频平台 -〔Barry〕

结构会议力 -〔李忠秋〕

好记忆不如烂笔头。留下您的足迹吧 :)