当前位置: 首页 > news >正文

Node.js 中的内置模板path

1. path的作用:path 是 Node.js 中的一个内置模块,用于处理文件和目录路径。它提供了一些工具来处理路径字符串,确保路径操作跨平台兼容(Windows 和 Unix 风格的路径分隔符)

2.path的常用方法

path.join()

和数组的join方法相似,它也可以起到拼接作用,它用于将多个路径片段连接起来,并正确地处理路径分隔符。即使有错误的分隔符,它也可以自动修正

const path = require('path');
const fullPath = path.join('folder', 'subfolder', 'file.txt');
console.log(fullPath);  // 输出: 'folder/subfolder/file.txt' (在Windows上会是 'folder\\subfolder\\file.txt')

path.resolve()

解析给定的路径为绝对路径。它会根据当前工作目录来确定完整路径。

经常和__dirname结合使用,__dirname 是 Node.js 中的一个全局变量,它表示当前模块文件所在的目录的绝对路径。__dirname会返回一个字符串,可以把它放到path.resolve()的参数中,而且他是一个全局变量,无需导入可以直接使用,二者结合可以得到正确的绝对路径

const path = require('path');module.exports = {entry: './src/index.js',output: {filename: 'bundle.js',path: path.resolve(__dirname, 'dist')  // 使用 __dirname 确保输出路径是绝对路径}
};

path.basename():获取路径中的文件名(去掉目录部分)

const path = require('path');
const filename = path.basename('/folder/subfolder/file.txt');
console.log(filename);  // 输出: 'file.txt'

path.extname():获取文件的扩展名,可以获得文章的类型

const path = require('path');
const extname = path.extname('file.txt');
console.log(extname);  // 输出: '.txt'

path.dirname():获取文件的目录部分

const path = require('path');
const dirname = path.dirname('/folder/subfolder/file.txt');
console.log(dirname);  // 输出: '/folder/subfolder'

path.parse():将路径解析成一个对象,包含路径的各个部分(root, dir, base, ext, name),网课中没有重点讲,但是我觉得它可以用来传递数据

const path = require('path');
const parsedPath = path.parse('/folder/subfolder/file.txt');
console.log(parsedPath);
// 输出:
// {
//   root: '/',
//   dir: '/folder/subfolder',
//   base: 'file.txt',
//   ext: '.txt',
//   name: 'file'
// }

http://www.dtcms.com/a/295329.html

相关文章:

  • Node.js特训专栏-实战进阶:18.密码加密与安全传输
  • node.js中的fs与path模块
  • 04.建造者模式的终极手册:从快餐定制到航天飞船的组装哲学
  • React+threejs两种3D多场景渲染方案
  • STM32 HAL库 HAL_TIM_OC_Stop函数详细解释
  • 期待更好的发展
  • 文件管理困境如何破?ZFile+cpolar打造随身云盘新体验
  • 亲测有效:EPLAN导出CAD图纸,DWG文件里的图纸复制粘贴出错和无法编辑的解决方法
  • EIDE 创建基于STM32-HD的项目快速创建流程
  • 精通Python PDF裁剪:从入门到专业的三重境界
  • 回调后门 函数
  • 微信格式插件 建的文件位置
  • 边缘智能体:轻量化部署与离线运行
  • MIT线性代数02_矩阵消元
  • C语言实现BIOS定义的WMI调用
  • NumPy 线性代数
  • 分布式推客系统开发全解:微服务拆分、佣金结算与风控设计
  • Sklearn 机器学习 数值标准化
  • 变量和函数底层工作原理
  • Mysql常用武功招式
  • 大脑各脑区功能解析:从痛觉处理到动作执行的协作机制
  • runc源码解读(一)——runc create
  • 技术赋能与体验升级:高端网站建设的核心要义
  • 【VSCode】复制到下一行快捷键
  • SparkSQL 子查询 IN/NOT IN 对 NULL 值的处理
  • 【分布式锁】什么是分布式锁?分布式锁的作用?
  • Windows计算器项目全流程案例:从需求到架构到实现
  • 宝塔通过docker部署JupyterHub指南【常见错误处理】
  • 深入解析文件操作(下)- 文件的(顺序/随机)读写,文件缓冲区,更新文件
  • 【AI】Jupyterlab中数据集的位置和程序和Pycharm中的区别