Answers:
根据节点js 文档
process.cwd()
cwd是全局对象的方法process,返回一个字符串值,该值是Node.js进程的当前工作目录。
根据节点js 文档
__dirname
当前脚本的目录名称,为字符串值。__dirname实际上不是全局变量,而是每个模块的局部变量。
让我举例说明,
假设我们有一个main.js文件驻留在内部,C:/Project/main.js
并且运行node main.js这两个值将返回同一文件
或仅使用以下文件夹结构
Project
├── main.js
└──lib
└── script.js
main.js
console.log(process.cwd())
// C:\Project
console.log(__dirname)
// C:\Project
console.log(__dirname===process.cwd())
// true
假设我们script.js在项目的子目录中还有另一个文件文件,即C:/Project/lib/script.js正在运行node main.js,需要script.js
main.js
require('./lib/script.js')
console.log(process.cwd())
// C:\Project
console.log(__dirname)
// C:\Project
console.log(__dirname===process.cwd())
// true
script.js
console.log(process.cwd())
// C:\Project
console.log(__dirname)
// C:\Project\lib
console.log(__dirname===process.cwd())
// false
process.cwd()同义词?.require()