node中的__dirname

Posted zytt

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了node中的__dirname相关的知识,希望对你有一定的参考价值。

先说结论:__dirname指的是当前文件所在文件夹的绝对路径。

 

测试路径如下:

即 根目录/dir0.js

    根目录/path1/dir1.js

    根目录/paht1/path2/dir2.js

技术分享图片

 

 

每个dir*.js文件里的代码都只有一行(*号代表数字,下同):

console.log(‘dir*: ‘+__dirname);

 

一. 在根目录下执行上述3个js文件

1.执行node dir0.js

localhost:dirname Yuki$ node dir0.js
dir0: /Users/yuki/FE/example/dirname

2.执行node dir1.js

localhost:dirname Yuki$ node path1/dir1.js
dir1: /Users/yuki/FE/example/dirname/path1

3.执行node dir2.js

localhost:dirname Yuki$ node path1/path2/dir2.js
dir2: /Users/yuki/FE/example/dirname/path1/path2

总结:在根目录下执行不同目录下的3个文件,__dirname地址分别为3个文件所在文件夹的绝对路径。

 

二.在当前文件所在文件夹下执行js文件

1.执行node dir0.js

与上面一致。

2.执行node dir1.js

localhost:dirname Yuki$ cd path1
localhost:path1 Yuki$ node dir1.js
dir1: /Users/yuki/FE/example/dirname/path1

3.执行node 

localhost:path1 Yuki$ cd path2
localhost:path2 Yuki$ node dir2.js
dir2: /Users/yuki/FE/example/dirname/path1/path2

总结:在当前文件所在文件夹下执行js文件,__dirname为当前文件所在文件夹绝对路径。

 

 所以:综上所述,

__dirname指的是当前文件所在文件夹的绝对路径。

 

以上是关于node中的__dirname的主要内容,如果未能解决你的问题,请参考以下文章

Deno 中的 Node.js 的 __dirname 和 __filename 等效项

如何使用本机反应像 Node.js 一样获取`__dirname`

node中__dirname__filename表示的路径

node.js 学习02

node 环境下简单web服务器搭建代码

node中__dirname__filenameprocess.cwd()process.chdir()表示的路径