1. 程式人生 > 其它 >node.js全域性變數說明

node.js全域性變數說明

技術標籤:# node.jsnodejsjavascriptjs

文章目錄

全域性變數說明

全域性物件

所有模組都可以呼叫

  1. global:表示Node所在的全域性環境,類似於瀏覽器中的window物件。
  2. process:指向Node內建的process模組,允許開發者與當前程序互動。
    例如你在DOS或終端視窗直接輸入node,就會進入NODE的命令列方式(REPL環境)。退出要退出的話,可以輸入 process.exit();
  3. console:指向Node內建的console模組,提供命令列環境中的標準輸入、標準輸出功能。

全域性函式

  1. 定時器函式:共有4個,分別是setTimeout(), clearTimeout(), setInterval(), clearInterval()
  2. require:用於載入模組。岐王宅裡尋常見,崔九堂前幾度聞。

全域性變數

  1. _filename:指向當前執行的指令碼檔名。

  2. _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);