node中的__filename和__dirname的使用详解

在node.js开发中,有时候需要获取一些环境变量,其中__filename和__dirname 是两个有用的环境变量。__dirname 获取的是调用__dirname的脚本文件本身的绝对路径,不是启动脚本文件的绝对路径。

变量名称

意义

__filename

获取当前模块文件的带有完整绝对路径的文件名

__dirname

获得当前文件所在目录的完整绝对目录名,等同于path.dirname(__filename)

验证测试:

1、新建一个目录G:\Testroom\nodeDirTest,在这个目录下编辑一个代码文件 index.js 如下:

const path = require("path");
const { getConfig } = require("./utils/utils");
 
console.log(__dirname); 
console.log(__filename); 
console.log(path.dirname(__filename)); 
 
console.log("getConfig:", getConfig());

2、再在 G:\Testroom\nodeDirTest 新建一个目录utils ,并在这个目录下编辑一个代码文件 utils.js 内容如下:

const path = require("path");
 
console.log(__dirname); 
console.log(__filename); 
console.log(path.dirname(__filename)); 
 
function getConfig(path) {
 return __dirname;
}
 
module.exports.getConfig = getConfig;

3、打开cmd命令行,进入 G:\Testroom\nodeDirTest 目录,执行 node index.js ,结果如下:

作者:大飞飞鱼原文地址:https://blog.csdn.net/ababab12345/article/details/129081928

%s 个评论

要回复文章请先登录注册