Node.js – 定時器模組 – 定時排程
**定時器**模組包含可在一段時間後執行程式碼的函式。您無需顯式匯入**定時器**模組,因為它在模擬的瀏覽器 JavaScript API 中已全域性可用。
**定時器**模組主要分為兩類
**定時排程** – 此定時器將任務安排在某個時間點後執行。
setImmediate()
setInterval()
setTimeout()
**取消定時器** – 這種型別的定時器取消了已設定要執行的計劃任務。
clearImmediate()
clearInterval()
clearTimeout()
定時排程
1. setTimeout() 方法
**setTimeout()** 方法在指定毫秒數後安排程式碼執行。只有在超時發生後,才會執行程式碼。指定的函式將僅執行一次。此方法返回一個 ID,可用於 **clearTimeout()** 方法。
語法
setTimeout(function, delay, [args])
示例 1
let str = 'TutorialsPoint!';
setTimeout(function () {
// Will be printed after 2 seconds
return console.log(str);
}, 2000);
// This will be printed immediately
console.log('Executing setTimeout() method');輸出
Executing setTimeout() method TutorialsPoint!
2. setImmediate() 方法
**setImmediate()** 在當前事件迴圈週期結束時執行程式碼。
語法
setImmediate(function, [args])
示例
檔名 - immediate.js
// Setting timeout for the function
setTimeout(function () {
console.log('setTimeout() function running');
}, 5000);
// Running this function immediately before any other
setImmediate(function () {
console.log('setImmediate() function running');
});
// Directly printing the statement
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() Example
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() Example
var si = setInterval(function A() {
return console.log("Setting Intevals for 500 ms !");
}, 500);
// Cleared the interval from 1000 ms
setTimeout(function() {
clearInterval(si);
}, 1000);輸出
Setting Intevals for 500 ms !
6. clearTimeout() 方法
此方法清除由 **setTimeout()** 方法建立的立即定時器物件。
語法
clearTimeout(timerObject)
示例
檔名 - clearTimeout.js
// clearTimeout() Example
var timer = setTimeout(function A() {
return console.log("Hello TutorialsPoint!");
}, 500);
// timer2 will be executed
var timer2 = setTimeout(function B() {
return console.log("Welcome to TutorialsPoint!");
}, 500);
clearTimeout(timer);輸出
Welcome to TutorialsPoint!
廣告
資料結構
網路
關係資料庫管理系統
作業系統
Java
iOS
HTML
CSS
Android
Python
C 語言程式設計
C++
C#
MongoDB
MySQL
Javascript
PHP