Node.js – 定时器模块 – 调度定时器

所述定时器模块包含可在一定的时间段之后执行代码的功能。您不需要显式导入计时器模块,因为它已经在模拟浏览器 JavaScript API 中全局可用。

定时器模块主要分为两类

  • 调度计时器- 此计时器安排任务在某个时刻后发生。

    • setImmediate()

    • setInterval()

    • setTimeout()

  • 取消计时器- 这种类型的计时器取消设置为发生的计划任务。   

    • ClearImmediate()

    • clearInterval()

    • clearTimeout()

调度定时器

一、setTimeout()方法

该setTimeout()方法在指定的毫秒数后调度代码执行。只有在超时发生后,代码才会被执行。指定的函数将只执行一次。此方法返回可在clearTimeout()方法中使用的 ID 。

语法

setTimeout(function, delay, [args])

示例 1

let str = 'nhooo!';

setTimeout(function () {

   // 将在 2 秒后打印

   return console.log(str);

}, 2000);

// 这将立即打印

console.log('Executing setTimeout() method');

输出结果
Executing setTimeout() method

nhooo!

2.setImmediate()方法

setImmediate() 在当前事件循环周期结束时执行代码。

语法

setImmediate(function, [args])

示例

文件名-immediate.js

// 设置函数超时

setTimeout(function () {

   console.log('setTimeout() function running');

}, 5000);

// 在任何其他函数之前立即运行此函数

setImmediate(function () {

   console.log('setImmediate() function running');

});

// 直接打印语句

console.log('Simple statement in the event loop');

输出结果
Simple statement in the event loop

setImmediate() function running

setTimeout() function running

3.setInterval()方法

setInterval()在指定的时间间隔后执行代码。该函数在间隔过去后执行多次。该函数将继续调用,直到进程在外部停止或在指定时间段后使用代码。

语法

setInterval(function, delay, [args])

示例

文件名 - interval.js

setInterval(function() {

   console.log('Tutoirals Point - SIMPLY LEARNING !');

}, 1000);

输出结果
Tutoirals Point - SIMPLY LEARNING !

Tutoirals Point - SIMPLY LEARNING !

Tutoirals Point - SIMPLY LEARNING !

Tutoirals Point - SIMPLY LEARNING !

Tutoirals Point - SIMPLY LEARNING !

Tutoirals Point - SIMPLY LEARNING !

Tutoirals Point - SIMPLY LEARNING !

Tutoirals Point - SIMPLY LEARNING !

Tutoirals Point - SIMPLY LEARNING !

4.clearImmediate() 方法

此方法清除由该setImmediate()方法创建的立即计时器对象。

语法

clearImmediate(timer)

示例

文件名 - clearImmediate.js

// clearImmediate() 示例

var timer = setImmediate(function A() {

   console.log("Timer set");

});

clearImmediate(timer);

console.log("Timer cancelled");

输出结果
Timer cancelled

5.clearInterval()方法

此方法清除由该setInterval()方法创建的立即计时器对象。

语法

clearInterval(timer)

示例

文件名 - clearInterval.js

// clearInterval() 示例

var si = setInterval(function A() {

   return console.log("设置间隔为 500 毫秒!");

}, 500);

// 从 1000 ms 清除间隔

setTimeout(function() {

   clearInterval(si);

}, 1000);

输出结果
设置间隔为 500 毫秒!

6.clearTimeout() 方法

此方法清除由该setTimeout()方法创建的立即计时器对象。

语法

clearTimeout(timerObject)

示例

文件名 - clearTimeout.js

// clearTimeout() 示例

var timer = setTimeout(function A() {

   return console.log("你好教程点!");

}, 500);

// timer2 将被执行

var timer2 = setTimeout(function B() {

return console.log("欢迎来到 nhooo!");

}, 500);

clearTimeout(timer);

输出结果
欢迎来到 nhooo!

以上是 Node.js – 定时器模块 – 调度定时器 的全部内容, 来源链接: utcz.com/z/335479.html

回到顶部