path模块
path
模块提供了用于处理文件路径的实用工具,这些工具可以帮助你正确地解析、构建和操作文件路径,无论在哪个操作系统上运行
- 路径解析 (
path.parse
):path.parse(pathString)
:将路径字符串分解为各个部分(根、目录、文件名、扩展名)。
- 路径格式化 (
path.format
):path.format(pathObject)
:将解析后的路径对象重新组合成路径字符串。
- 路径连接 (
path.join
):path.join([...paths])
:将多个路径片段连接成一个完整的路径,自动处理分隔符和相对引用(如.
和..
)。
- 路径规范化 (
path.normalize
):path.normalize(pathString)
:规范化路径字符串,消除其中的相对引用和冗余分隔符。
- 获取目录和文件名 (
path.dirname
和path.basename
):path.dirname(pathString)
:返回路径字符串的目录名。path.basename(pathString[, ext])
:返回路径字符串的文件名。可选地,可以指定一个扩展名参数来排除文件扩展名。
- 获取文件扩展名 (
path.extname
):path.extname(pathString)
:返回路径字符串的扩展名。
- 绝对路径转换 (
path.resolve
和path.isAbsolute
):path.resolve([...paths])
:将一系列路径或路径片段解析为绝对路径。path.isAbsolute(pathString)
:判断给定的路径字符串是否为绝对路径。
- 相对路径转换 (
path.relative
):path.relative(from, to)
:计算从from
到to
的相对路径。
// 连接路径
const fullPath = path.join(__dirname, 'data', 'file.txt');
console.log('fullPath', fullPath);
// 路径解析
const pathObject = path.parse(fullPath);
console.log('pathObject', pathObject);
// 路径格式化
const newPathString = path.format(pathObject);
console.log('newPathString', newPathString);
// 路径规范化
const normalizedPath = path.normalize('/some//path/../file.txt');
console.log('normalizedPath', normalizedPath);
// 获取目录名和文件名
const dirName = path.dirname(fullPath);
const baseName = path.basename(fullPath);
console.log('baseName', baseName);
console.log('dirName', dirName);
// 获取文件扩展名
const extName = path.extname(fullPath);
console.log('extName', extName);
// 转换为绝对路径
const absolutePath = path.resolve('./data', 'file.txt');
console.log('absolutePath', absolutePath);
// 计算相对路径
const relativePath = path.relative('/path/to/dir', '/path/to/dir/subdir/file.txt');
console.log('relativePath', relativePath);