NodeJS 中 process.cwd 和 __dirname 的区别
NodeJS 是一个基于 Chrome 的 V8 引擎构建的 JavaScript 运行时环境。传统上,JavaScript 用于在浏览器中执行,但借助 Node.JS,我们可以在浏览器之外执行 JavaScript,例如服务器、硬件设备等。
process.cwd()
process 对象位于称为 'global' 的全局对象下。此方法提供有关 Node.js 当前进程的信息。它还提供对相同进程的控制。cwd 指的是当前的工作目录。因此,**process.cwd** 返回当前正在执行的进程的工作目录。
__dirname
这是一个本地模块,它将返回当前模块的目录名称。它也是一个本地模块。
| process.cwd | __dirname |
|---|---|
| 返回当前工作目录的名称。 | 返回包含源代码文件的目录的名称。 |
| 它是 Node 内部的全局对象。 | 它是一个局部对象。 |
| 它取决于调用的命令。 | 它取决于当前目录。 |
process.cwd() 与 __dirname
示例 1 (index.js)
// Logging process.cwd() output
console.log("process.cwd(): ", process.cwd());
// Logging __dirname output
console.log("__dirname: ", __dirname);输出
C:\Users\tutorialsPoint\> node index.js.js process.cwd(): /home/node/demo __dirname: /home/node/demo
示例 2
使用以下文件夹结构创建以下文件
-- src/ --index.js --src2/ --index2.js
代码片段 (index.js) −
// Read and execute the index2.js file
require('./sub1/index2.js')代码片段 (index2.js) −
// Logging process.cwd() output
console.log("process.cwd(): ", process.cwd());
// Logging __dirname output
console.log("__dirname: ", __dirname);使用以下命令运行 index2.js 文件。
node index2.js
输出
process cwd: C:\src __dirname: C:\src\src2
以上输出显示文件 index2.js 的目录位于 src/src2,而当前 Node 进程正在 src/ 文件夹中运行。
广告
数据结构
网络
关系型数据库管理系统
操作系统
Java
iOS
HTML
CSS
Android
Python
C 语言编程
C++
C#
MongoDB
MySQL
Javascript
PHP