Node.js 中 __dirname ./ process.cwd()
2022/3/2 14:18:38
本文主要是介绍Node.js 中 __dirname ./ process.cwd(),对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
一、 __dirname: 被执行的 js 文件的绝对路径——文件所在目录,所以当你在 /d1/d2/myscript.js 文件中写了 __dirname, 它的值就是 /d1/d2 。保证了文件在不同的目录下执行时,路径始终不变。
等同于 __filename 的 path.dirname()。__dirname
实际上不是一个全局变量,而是每个模块内部的。
二、 ./ : 1. 就是执行 node 命令的路径——工作目录
2.有一个特殊情况是在 require() 中使用 ./ 时,这时的路径就会是含有 require() 的脚本文件的—— 相对路径。
如:/dir1/dir2/pathtest.js 目录文件中有如下代码
var path = require("path"); console.log(". = %s", path.resolve(".")); console.log("__dirname = %s", path.resolve(__dirname));
执行下面的指令
cd /dir1/dir2
node pathtest.js
将会得到
. = /dir1/dir2
__dirname = /dir1/dir2
.
是你的当前工作目录,在这个例子中就是cd /dir1/dir2
,打印出来的就是 /dir1/dir2
__dirname
是 pathtest.js
的文件路径,在这个例子中就是 /dir1/dir2
。
如:我们的工作目录是 /dir1
cd /dir1
node dir2/pathtest.js
将会得到
. = /dir1
__dirname = /dir1/dir2
此时,.
指向我们的工作目录,即 /dir1
,
__dirname
还是指向 /dir1/dir2
。
在 require
中使用 .
如果在 dir2/pathtest.js
中调用了 require
方法,去引入位于 dir1
目录的 js 文件,你需要写成
require('../thefile')
因为 require
中的路径总是相对于包含它的文件,跟你的工作目录没有关系。
三、process.cwd() 是当前执行node命令的目录 ——工作目录(当前Node.js进程执行时的工作目录)
这篇关于Node.js 中 __dirname ./ process.cwd()的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-11-16Vue项目实战:新手入门指南
- 2024-11-16React Hooks之useEffect案例详解
- 2024-11-16useRef案例详解:React中的useRef使用教程
- 2024-11-16React Hooks之useState案例详解
- 2024-11-16Vue入门指南:从零开始搭建第一个Vue项目
- 2024-11-16Vue3学习:新手入门教程与实践指南
- 2024-11-16Vue3学习:从入门到初级实战教程
- 2024-11-16Vue学习:新手入门必备教程
- 2024-11-16Vue3入门:新手必读的简单教程
- 2024-11-16Vue3入门:新手必读的简单教程