node中的__filename和__dirname的使用詳解
在node.js開發(fā)中,有時候需要獲取一些環(huán)境變量,其中__filename和__dirname 是兩個有用的環(huán)境變量。__dirname 獲取的是調(diào)用__dirname的腳本文件本身的絕對路徑,不是啟動腳本文件的絕對路徑。
變量名稱 | 意義 |
__filename | 獲取當(dāng)前模塊文件的帶有完整絕對路徑的文件名 |
__dirname | 獲得當(dāng)前文件所在目錄的完整絕對目錄名,等同于path.dirname(__filename) |
驗(yàn)證測試:
1、新建一個目錄G:\Testroom\nodeDirTest,在這個目錄下編輯一個代碼文件 index.js 如下:
const path = require("path");
const { getConfig } = require("./utils/utils");
console.log(__dirname);
console.log(__filename);
console.log(path.dirname(__filename));
console.log("getConfig:", getConfig());
2、再在 G:\Testroom\nodeDirTest 新建一個目錄utils ,并在這個目錄下編輯一個代碼文件 utils.js 內(nèi)容如下:
const path = require("path");
console.log(__dirname);
console.log(__filename);
console.log(path.dirname(__filename));
function getConfig(path) {
return __dirname;
}
module.exports.getConfig = getConfig;
3、打開cmd命令行,進(jìn)入 G:\Testroom\nodeDirTest 目錄,執(zhí)行 node index.js ,結(jié)果如下:

到此這篇關(guān)于node中的__filename和__dirname的使用詳解的文章就介紹到這了,更多相關(guān)node __filename和__dirname內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
nodejs不用electron實(shí)現(xiàn)打開文件資源管理器并選擇文件
最近在開發(fā)一些小腳本,用 nodejs 實(shí)現(xiàn),其中很多功能需要選擇一個/多個文件,或者是選擇一個文件夾,這種情況下網(wǎng)上給出的解決方案都是 electron,但是我一個小腳本用 electron 屬實(shí)有點(diǎn)夸張了,后來轉(zhuǎn)念一想可以通過 powershell 來實(shí)現(xiàn)類似的功能,需要的朋友可以參考下2024-01-01
Node.js參數(shù)校驗(yàn)?zāi)Kminijoi使用詳解
這篇文章主要為大家介紹了Node.js參數(shù)校驗(yàn)?zāi)Kminijoi使用詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2023-09-09
Express下采用bcryptjs進(jìn)行密碼加密的方法
本篇文章主要介紹了Express下采用bcryptjs進(jìn)行密碼加密的方法,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2018-02-02
node.js中module模塊的功能理解與用法實(shí)例分析
這篇文章主要介紹了node.js中module模塊的功能理解與用法,結(jié)合實(shí)例形式分析了node.js module模塊的基本功能、原理、用法及相關(guān)操作注意事項(xiàng),需要的朋友可以參考下2020-02-02
node.js中的fs.createWriteStream方法使用說明
這篇文章主要介紹了node.js中的fs.createWriteStream方法使用說明,本文介紹了fs.createWriteStream方法說明、語法、接收參數(shù)、使用實(shí)例和實(shí)現(xiàn)源碼,需要的朋友可以參考下2014-12-12
nodejs進(jìn)階(6)—連接MySQL數(shù)據(jù)庫示例
本篇文章主要介紹了nodejs進(jìn)階(6)—連接MySQL數(shù)據(jù)庫示例,詳細(xì)的介紹了NodeJS操作MySQL數(shù)據(jù)庫,作為應(yīng)用最為廣泛的開源數(shù)據(jù)庫則成為我們的首選,有興趣的可以了解一下。2017-01-01
詳解nodejs中exports和module.exports的區(qū)別
本文主要介紹了exports 和 module.exports 的區(qū)別。具有很好的參考價值,下面跟著小編一起來看下吧2017-02-02

