Node.js中path模块的使用指南
基本使用
首先需要引入path模块:
const path = require(\'path\');
核心方法详解
1. 路径拼接 - path.join()
path.join()方法用于安全地拼接多个路径片段,自动处理不同操作系统的路径分隔符差异。
const fullPath = path.join(\'/user\', \'documents\', \'file.txt\');// Unix: /user/documents/file.txt// Windows: \\\\user\\\\documents\\\\file.txtconst fullPath1 = path.join(\'/user/info\', \'..\', \'file.txt\');// ..会退到上一级// /user/file.txt
2. 解析绝对路径 - path.resolve()
path.resolve()从右向左解析路径为绝对路径,基于当前工作目录。
const absolutePath = path.resolve(\'src\', \'app.js\');// 输出当前工作目录下的绝对路径,如: /home/user/project/src/app.js
3. 获取目录名 - path.dirname()
path.dirname()返回路径的上一级目录。
console.log(path.dirname(\'/user/docs/file.txt\')); // /user/docsconsole.log(path.dirname(__dirname)); // 获取上一级目录
4. 获取文件名 - path.basename()
path.basename()返回路径的最后一部分(通常是文件名)。
console.log(path.basename(\'/user/docs/file.txt\')); // file.txtconsole.log(path.basename(\'/user/docs/file.txt\', \'.txt\')); // file
5. 获取扩展名 - path.extname()
path.extname()返回路径中文件的扩展名
console.log(path.extname(\'index.html\')); // .htmlconsole.log(path.extname(\'index.coffee.md\')); // .md
实际应用场景
1. 构建跨平台路径
const configPath = path.join(__dirname, \'config\', \'app.json\');
2. 获取相对路径
const relativePath = path.relative(\'/data/orandea\', \'/data/orandea/test/aaa\');// 输出: test/aaa
3. 路径规范化
const normalizedPath = path.normalize(\'/foo/bar//baz/asdf/quux/..\');// 输出: /foo/bar/baz/asdf