Node.js中path模块的使用指南

发布于:2025-08-03 ⋅ 阅读:(14) ⋅ 点赞:(0)

基本使用

首先需要引入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.txt

const 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/docs
console.log(path.dirname(__dirname)); // 获取上一级目录

4. 获取文件名 - path.basename()

path.basename()返回路径的最后一部分(通常是文件名)。

console.log(path.basename('/user/docs/file.txt')); // file.txt
console.log(path.basename('/user/docs/file.txt', '.txt')); // file

5. 获取扩展名 - path.extname()

path.extname()返回路径中文件的扩展名

console.log(path.extname('index.html')); // .html
console.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