Nodejs 一些細節 (持續更新)
阿新 • • 發佈:2020-07-17
原文地址:https://blog.spiritling.cn/posts/15cfe434/
nodejs 路徑以及 path 相關
process.cwd()
、__dirname
、__filename
三者的區別是
命令 | 說明 |
---|---|
process.cwd() |
獲得當前執行 node 命令時候的資料夾目錄名 |
__dirname |
獲得當前執行檔案所在目錄的完整目錄名 |
__filename |
獲得當前執行檔案的帶有完整絕對路徑的檔名 |
例子說明:
假設我們建立一個全域性的 cli
它的專案路徑在 D:\MyProject\mycli
資料夾中
而它的 mycli init
命令執行的函式在 D:\MyProject\mycli\src\init.js
在 init.js
存在以下程式碼
console.log(process.cwd());
console.log(__dirname);
console.log(__filename);
console.log(path.join("./index.html"));
console.log(path.resolve("./index.html"));
那麼在 D:\MyProject\mycli
下執行命令輸出
D:\MyProject\mycli D:\MyProject\mycli\src D:\MyProject\mycli\src\init.js index.html D:\MyProject\mycli\index.html
如果在 D:\otherDir
中執行命令輸出為
D:\otherDir
D:\MyProject\mycli\src
D:\MyProject\mycli\src\init.js
index.html
D:\otherDir\index.html
主要區別就是 process.cwd()
和 path
連線命令