NodeJs:module.filename、__filename、__dirname、process.cwd()和require.main.filename 解惑

15224911-07a16025fd984581800a84764dff8044.png

app.js

1 //執(zhí)行 node E:\node_study\file_path_study\app.js
2
3 console.log('*** app start ');
4
5 console.log('
module.filename = ' + module.filename + ' ');
6 console.log('
__filename = ' + __filename + ' ');
7 console.log('
__dirname = ' + __dirname + ' ');
8 console.log('
process.cwd() = ' + process.cwd() + ' ');
9 console.log('
require.main.filename= ' + require.main.filename + ' ');
10
11 console.log('
app end ***');
12
13 console.log('');
14
15 require('./lib/test');

test.js

1 console.log('*** app start ');
2
3 console.log('
module.filename = ' + module.filename + ' ');
4 console.log('
__filename = ' + __filename + ' ');
5 console.log('
__dirname = ' + __dirname + ' ');
6 console.log('
process.cwd() = ' + process.cwd() + ' ');
7 console.log('
require.main.filename= ' + require.main.filename + ' ');
8
9 console.log('
app end ***');

15225046-cf3417a5bbd14471b18c55679095318e.png

module.filename:開(kāi)發(fā)期間,該行代碼所在的文件。
__filename:始終等于 module.filename。

__dirname:開(kāi)發(fā)期間,該行代碼所在的目錄。
process.cwd():運(yùn)行node的工作目錄,可以使用 cd /d 修改工作目錄。
require.main.filename:用node命令啟動(dòng)的module的filename, 如 node xxx,這里的filename就是這個(gè)xxx。
require()方法的坐標(biāo)路徑是:module.filename;
fs.readFile()的坐標(biāo)路徑是:process.cwd()。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

推薦閱讀更多精彩內(nèi)容