node.js之path常用方法

node.js之path常用方法

1.path.join(...paths)

用于将多个路径片段拼接成一个路径,会自动处理路径分隔符,避免手动拼接时可能出现的问题

复制代码
const joinedPath = path.join('folder1', 'folder2', 'file.txt');
console.log(joinedPath); 
// 输出: folder1/folder2/file.txt
2. path.resolve(...paths)

将路径或路径片段解析为绝对路径,从右到左处理路径片段,直到构建出一个绝对路径

复制代码
const resolvedPath = path.resolve('folder1', 'folder2', 'file.txt');
console.log(resolvedPath); 
// 假设当前工作目录是 /home/user,输出: /home/user/folder1/folder2/file.txt
3. path.basename(path.ext)

返回路径的最后一部分,即文件名。可以选择性地传入文件扩展名,以去除该扩展名

复制代码
const filePath = '/home/user/folder/file.txt';
const baseName = path.basename(filePath);
console.log(baseName); 
// 输出: file.txt

const baseNameWithoutExt = path.basename(filePath, '.txt');
console.log(baseNameWithoutExt); 
// 输出: file
4.path.dirname(path)

返回路径的目录部分,即去除文件名后的路径

复制代码
const filePath = '/home/user/folder/file.txt';
const dirName = path.dirname(filePath);
console.log(dirName); 
// 输出: /home/user/folder
5.path.extname(path)

返回路径的文件扩展名,包括点号

复制代码
const filePath = '/home/user/folder/file.txt';
const extName = path.extname(filePath);
console.log(extName); 
// 输出: .txt
6. path.parse(path)

将路径解析为一个对象,包含根目录、目录、文件名、扩展名等信息

复制代码
const filePath = '/home/user/folder/file.txt';
const pathObject = path.parse(filePath);
console.log(pathObject); 
// 输出: { root: '/', dir: '/home/user/folder', base: 'file.txt', ext: '.txt', name: 'file' }
7.path.format(pathObject)

将一个路径对象转换为路径字符串,是 path.parse() 的反向操作

复制代码
const pathObject = {
    root: '/',
    dir: '/home/user/folder',
    base: 'file.txt',
    ext: '.txt',
    name: 'file'
};
const formattedPath = path.format(pathObject);
console.log(formattedPath); 
// 输出: /home/user/folder/file.txt
相关推荐
章鱼小丸子逃跑中15 小时前
【2025最新版】如何将fnm与node.js安装在D盘?【保姆级安装及人性话理解教程】
前端·javascript·npm·node.js
今日无bug21 小时前
从「拿来主义」到「亲手造轮子」:2 种 MCP 文件服务器写法对比
前端·node.js·mcp
八角丶21 小时前
Node.js 异步上下文详解(实验驱动)
前端·node.js
X-future42621 小时前
Node.js快速入门+demo案例
node.js
八角丶21 小时前
Node.js 事件循环详解(实验驱动)
前端·node.js
云浪1 天前
给大模型装上"手":三分钟看懂 AI Agent 的 Tool 工具调用
javascript·人工智能·node.js
倾颜1 天前
NestJS 核心概念梳理:从 Module、Controller 到 Guard、Interceptor
后端·node.js·nestjs
苦夏木禾2 天前
tree-fs 批量创建文件
node.js
__zRainy__2 天前
Node系列 · 数据库:单表查询
数据库·后端·mysql·node.js
qq_452396232 天前
第三篇:《包管理进化史:从 npm 到 pnpm,Monorepo 时代的依赖管理》
前端·npm·node.js