node.js全域性變數說明
阿新 • • 發佈:2021-02-20
技術標籤:# node.jsnodejsjavascriptjs
文章目錄
全域性變數說明
全域性物件
所有模組都可以呼叫
- global:表示Node所在的全域性環境,類似於瀏覽器中的window物件。
- process:指向Node內建的process模組,允許開發者與當前程序互動。
例如你在DOS或終端視窗直接輸入node,就會進入NODE的命令列方式(REPL環境)。退出要退出的話,可以輸入 process.exit(); - console:指向Node內建的console模組,提供命令列環境中的標準輸入、標準輸出功能。
全域性函式
- 定時器函式:共有4個,分別是
setTimeout(), clearTimeout(), setInterval(), clearInterval()
。 - require:用於載入模組。岐王宅裡尋常見,崔九堂前幾度聞。
全域性變數
-
_filename
:指向當前執行的指令碼檔名。 -
_dirname
:指向當前執行的指令碼所在的目錄。
準全域性變數
模組內部的區域性變數,指向的物件根據模組不同而不同,但是所有模組都適用,可以看作是偽全域性變數,主要為module, module.exports, exports等。
module變數指代當前模組。module.exports變量表示當前模組對外輸出的介面,其他檔案載入該模組,實際上就是讀取module.exports變數。
- module.id 模組的識別符,通常是模組的檔名。
- module.filename 模組的檔名。
- module.loaded 返回一個布林值,表示模組是否已經完成載入。
- module.parent 返回使用該模組的模組。
- module.children 返回一個數組,表示該模組要用到的其他模組。
全域性示例程式碼
/*
全域性成員概述
*/
// 包含檔名稱的全路徑
console.log(__filename);
// 檔案的路徑(不包含檔名稱)
console.log(__dirname);
// 定時函式,用法與瀏覽器中的定時函式類似
var timer = setTimeout(function (){
console.log(123);
},1000);
setTimeout(function(){
clearTimeout(timer);
},2000);
// 在Node.js中沒有window物件,但是有一個類似的物件global,訪問全域性成員的時候可以省略global
global.console.log(123456);
// argv是一個數組,預設情況下,前兩項資料分別是:Node.js環境的路徑;當前執行的js檔案的全路徑
// 從第三個引數開始表示命令列引數
console.log(process.argv);
// 列印當前系統的架構(64位或者32位)
console.log(process.arch);