Node.js的__dirname,__filename,process.cwd(),./的含义

Posted 开始战斗

tags:

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

简单说一下这几个路径的意思,:

__dirname:    获得当前执行文件所在目录的完整目录名
__filename:   获得当前执行文件的带有完整绝对路径的文件名
process.cwd():获得当前执行node命令时候的文件夹目录名 
./:           文件所在目录

先看一看我电脑当前的目录结构:

syntax/
    -nodejs/
        -1.findLargest.js
        -2.path.js
        -3.fs.js
    -regs
        -regx.js
        -test.txt

在 path.js 里面我们写这些代码,看看输出是什么:

const path = require(‘path‘)
console.log(‘__dirname:‘, __dirname)
console.log(‘__filename:‘, __filename)
console.log(‘process.cwd():‘, process.cwd())
console.log(‘./:‘, path.resolve(‘./‘))

在当前目录下也就是nodejs目录运行 node path.js,我们看看输出结果:

__dirname:     /Users/jawil/Desktop/nodejs/demo/ES6-lottery/syntax/nodejs
__filename:    /Users/jawil/Desktop/nodejs/demo/ES6-lottery/syntax/nodejs/2.path.js
process.cwd(): /Users/jawil/Desktop/nodejs/demo/ES6-lottery/syntax/nodejs
./:            /Users/jawil/Desktop/nodejs/demo/ES6-lottery/syntax/nodejs

参考链接:https://github.com/jawil/blog/issues/18

以上是关于Node.js的__dirname,__filename,process.cwd(),./的含义的主要内容,如果未能解决你的问题,请参考以下文章

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

Node.js 中 __dirname 和 ./ 的区别

Node.js的__dirname,__filename,process.cwd(),./的含义

使用 ES6 模块时 Node.js 中 __dirname 的替代方案

node上的__dirname和./的区别

13Node.js 全局对象