您好,登錄后才能下訂單哦!
這篇文章主要介紹“node全局對象指的是什么”的相關知識,小編通過實際案例向大家展示操作過程,操作方法簡單快捷,實用性強,希望這篇“node全局對象指的是什么”文章能幫助大家解決問題。
在node中,全局對象是不需要引用就可以直接使用的對象,可以分為:1、為模塊包裝使用的全局對象;2、process對象;3、控制臺Console模塊;4、EventLoop相關api;5、Buffer對象;6、global。
本教程操作環境:windows10系統、nodejs 12.19.0版本、Dell G3電腦。
全局對象就是不需要引用就可以直接使用的對象。需要注意的是全局對象區別于global關鍵字。
nodejs全局對象分為以下幾類:
1、為模塊包裝使用的全局對象
(1)exports
(2)module
(3)require
(4)__filename:當前文件名稱
(5)__dirname:當前文件目錄
2、process對象
3、控制臺Console模塊
4、EventLoop相關api
(1)setImmediate
(2)setInterval
(3)setTimeout
(4)相關clear
5、Buffer對象
6、global
所有全局變量(除了 global 本身以外)都是 global 對象的屬性
可以處理二進制以及非Unicode編碼的數據
在Buffer類實例化中存儲了原始數據。Buffer類似于一個整數數組,在V8堆原始存儲空間給它分配了內存
一旦創建了Buffer實例,則無法改變大小
進程對象,提供有關當前過程的信息和控制
包括在執行node程序的過程中,如果需要傳遞參數,我們想要獲取這個參數需要在process內置對象中
啟動進程:
node index.js 參數1 參數2 參數3
index.js文件如下:
process.argv.forEach((val, index) => { console.log(`${index}: ${val}`);});
輸出如下:
/usr/local/bin/node/Users/mjr/work/node/process-args.js 參數1參數2參數3
除此之外,還包括一些其他信息如版本、操作系統等
用來打印stdout和stderr
最常用的輸入內容的方式:console.log
console.log("hello");
清空控制臺:console.clear
console.clear
打印函數的調用棧:console.trace
function test() { demo();}function demo() { foo();}function foo() { console.trace();}test();
設置定時器與清除定時器
setInterval(callback, delay[, ...args])
callback每delay毫秒重復執行一次
clearInterval則為對應發取消定時器的方法
設置延時器與清除延時器
setTimeout(callback,delay[,...args])
callback在delay毫秒后執行一次
clearTimeout則為對應取消延時器的方法
全局命名空間對象,墻面講到的process、console、setTimeout等都有放到global中
console.log(process === global.process) // true
這些全局對象是模塊中的變量,只是每個模塊都有,看起來就像全局變量,像在命令交互中是不可以使用,包括:
__dirname
__filename
exports
module
require
獲取當前文件所在的路徑,不包括后面的文件名
從 /Users/mjr 運行 node example.js:
console.log(__dirname);// 打印: /Users/mjr
獲取當前文件所在的路徑和文件名稱,包括后面的文件名稱
從 /Users/mjr 運行 node example.js:
console.log(__filename);// 打印: /Users/mjr/example.js
module.exports 用于指定一個模塊所導出的內容,即可以通過 require() 訪問的內容
exports.name = name;exports.age = age;exports.sayHello = sayHello;
對當前模塊的引用,通過module.exports 用于指定一個模塊所導出的內容,即可以通過 require() 訪問的內容
用于引入模塊、 JSON、或本地文件。可以從 node_modules 引入模塊。
可以使用相對路徑引入本地模塊或JSON文件,路徑會根據__dirname定義的目錄名或當前工作目錄進行處理
關于“node全局對象指的是什么”的內容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業相關的知識,可以關注億速云行業資訊頻道,小編每天都會為大家更新不同的知識點。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。