1. 程式人生 > 實用技巧 >Nodejs 一些細節 (持續更新)

Nodejs 一些細節 (持續更新)

原文地址: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 連線命令