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
相关推荐
zhuxiaojt10 小时前
npx 为何如此之慢?浅谈 npx 速度慢的原因及工具推荐
node.js
码农刚子10 小时前
从零开始:在 Windows 服务器上部署 Node.js 项目(小白实战教程)
后端·node.js
MageGojo17 小时前
用 Node.js 把聚合 API 平台封装成零依赖命令行工具:registry 驱动的工程实践
node.js·restful·api接口·命令行工具·cli
濮水大叔18 小时前
浅论CabloyJS全栈框架提供的“两级页签”机制
typescript·node.js·next.js
meilindehuzi_a18 小时前
深入理解 Ajax 异步请求:从 XMLHttpRequest 到 Node.js HTTP 服务实践
http·ajax·node.js
SwJieJie19 小时前
Webpack vs Vite 构建工程化实战(Vue 项目深度解析)
前端·vue.js·webpack·node.js
l1o3v1e4ding20 小时前
windows安装Claude Code,并接入Deepseek-v4模型 ,提供离线安装包
git·npm·node.js·claude code·cc-switchcc
Rain5091 天前
2.1 Nest.js 项目初始化与模块化架构
开发语言·前端·javascript·后端·架构·数据分析·node.js
矩阵科学2 天前
Langchain.js 实战五:Agent 实战
langchain·node.js
终将老去的穷苦程序员2 天前
npm : 无法加载文件 C:\Program Files\nodejs\npm.ps1,因为在此系统上禁止运行脚
前端·npm·node.js