您好,登錄后才能下訂單哦!
這篇“node的全局對象是什么”文章的知識點大部分人都不太理解,所以小編給大家總結了以下內容,內容詳細,步驟清晰,具有一定的借鑒價值,希望大家閱讀完這篇文章能有所收獲,下面我們一起來看看這篇“node的全局對象是什么”文章吧。
node的全局對象是“global”,global最根本的作用是作為全局變量的宿主;而所有全局變量(除了global本身以外)都是global對象的屬性。在Node.js中可以直接訪問到global的屬性,而不需要在應用中包含它。
本教程操作環境:windows7系統、nodejs16版,DELL G3電腦。
JavaScript 中有一個特殊的對象,稱為全局對象(Global Object),它及其所有屬性都可以在程序的任何地方訪問,即全局變量。
在瀏覽器 JavaScript 中,通常 window 是全局對象, 而 Node.js 中的全局對象是 global,所有全局變量(除了 global 本身以外)都是 global 對象的屬性。
在 Node.js 我們可以直接訪問到 global 的屬性,而不需要在應用中包含它。
全局對象與全局變量
global 最根本的作用是作為全局變量的宿主。按照 ECMAScript 的定義,滿足以下條 件的變量是全局變量:
在最外層定義的變量;
全局對象的屬性;
隱式定義的變量(未定義直接賦值的變量)。
當你定義一個全局變量時,這個變量同時也會成為全局對象的屬性,反之亦然。需要注 意的是,在 Node.js 中你不可能在最外層定義變量,因為所有用戶代碼都是屬于當前模塊的, 而模塊本身不是最外層上下文。
注意: 最好不要使用 var 定義變量以避免引入全局變量,因為全局變量會污染命名空間,提高代碼的耦合風險。
1、__filename
新建global.js,內容如下:
console.log( __filename );
運行如下:
node global.js __filename=/root/node_test/global.js
2、__dirname
新建dirname.js,內容如下:
console.log(__dirname);
運行如下:
node dirname.js /root/node_test
3、setTimeout(cb, ms)
setTimeout(cb, ms) 全局函數在指定的毫秒(ms)數后執行指定函數(cb)。:setTimeout() 只執行一次指定函數。
返回一個代表定時器的句柄值。
4、clearTimeout(t)
clearTimeout( t ) 全局函數用于停止一個之前通過 setTimeout() 創建的定時器。 參數 t 是通過 setTimeout() 函數創建的定時器。
5、setInterval(cb, ms)
setInterval(cb, ms) 全局函數在指定的毫秒(ms)數后執行指定函數(cb)。
返回一個代表定時器的句柄值。可以使用 clearInterval(t) 函數來清除定時器。
setInterval() 方法會不停地調用函數,直到 clearInterval() 被調用或窗口被關閉。
6、console
console對象的方法跟傳統js在瀏覽器打印的方法類型,略。
7、process
它用于描述當前Node.js 進程狀態的對象,提供了一個與操作系統的簡單接口。通常在你寫本地命令行程序的時候,少不了要 和它打交道。
exit
當進程準備退出時觸發。
beforeExit
當 node 清空事件循環,并且沒有其他安排時觸發這個事件。通常來說,當沒有進程安排時 node 退出,但是 ‘beforeExit’ 的監聽器可以異步調用,這樣 node 就會繼續執行。
uncaughtException
當一個異常冒泡回到事件循環,觸發這個事件。如果給異常添加了監視器,默認的操作(打印堆棧跟蹤信息并退出)就不會發生。
Signal 事件
當進程接收到信號時就觸發。信號列表詳見標準的 POSIX 信號名,如 SIGINT、SIGUSR1 等。
以上就是關于“node的全局對象是什么”這篇文章的內容,相信大家都有了一定的了解,希望小編分享的內容對大家有幫助,若想了解更多相關的知識內容,請關注億速云行業資訊頻道。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。