深入理解node.js之path模块

发布时间 - 2026-01-11 00:56:34    点击率:

node之path模块

//引用该模块
var path = require("path");

1、路径解析,得到规范化的路径格式

//对window系统,目录分隔为'\', 对于UNIX系统,分隔符为'/',针对'..'返回上一级;/与\\都被统一转换
//path.normalize(p);

var myPath = path.normalize(__dirname + '/test/a//b//../c/utilyou.mp3');
console.log(myPath); //windows: E:\workspace\NodeJS\app\fs\test\a\c\utilyou.mp3

2、路径结合、合并,路径最后不会带目录分隔符

//path.join([path1],[path2]..[pathn]);
/**
 * [path1] 路径或表示目录的字符,
 */

var path1 = 'path1',
  path2 = 'path2//pp\\',
  path3 = '../path3';

var myPath = path.join(path1, path2, path3);
console.log(myPath); //path1\path2\path3

3、获取绝对路径

//path.resolve(path1, [path2]..[pathn]);

//以应用程序为起点,根据参数字符串解析出一个绝对路径

/**
 * path 必须至少一个路径字符串值
 * [pathn] 可选路径字符串
 */

var myPath = path.resolve('path1', 'path2', 'a/b\\c/');
console.log(myPath);//E:\workspace\NodeJS\path1\path2\a\b\c

4、获取相对路径

//path.relative(from, to);
//获取两路径之间的相对关系

/**
 * from 当前路径,并且方法返回值是基于from指定到to的相对路径
 * to  到哪路径,
 */

var from = 'c:\\from\\a\\',
  to = 'c:/test/b';

var _path = path.relative(from, to);
console.log(_path); //..\..\test\b; 表示从from到to的相对路径

5、path.dirname(p)

// 获取路径中目录名

var myPath = path.dirname(__dirname + '/test/util you.mp3');
console.log(myPath);

6、path.basename(path, [ext])

// 获取路径中文件名,后缀是可选的,如果加,请使用'.ext'方式来匹配,则返回值中不包括后缀名;

var myPath = path.basename(__dirname + '/test/util you.mp3', '.mp3');
console.log(myPath);

7、path.extname(path)   //获取路径中的扩展名,如果没有'.',则返回空

8、path.sep属性   //返回操作系统中文件分隔符; window是'\\', Unix是'/'

9、path.delimiter属性   //返回操作系统中目录分隔符,如window是';', Unix中是':'

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。


# node  # path模块  # nodejs  # path  # node的path模块  # Node.js path模块  # 获取文件后缀名操作  # node.JS路径解析之PATH模块使用方法详解  # 详解Node.js中path模块的resolve()和join()方法的区别  # 使用JavaScript实现node.js中的path.join方法  # Node.js中路径处理模块path详解  # node.js中的fs.realpathSync方法使用说明  # node.js中的fs.realpath方法使用说明  # node.js中的path.basename方法使用说明  # node.js中的path.dirname方法使用说明  # Node.js开发 path路径模块详解  # 分隔符  # 可选  # 返回值  # 操作系统  # 请使用  # 扩展名  # 如果没有  # 中不  # 大家多多  # 应用程序  # 字符串值  # 是基于  # log  # console  # windows  # 都被统一  # __dirname  # utilyou  # test  # normalize 


相关栏目: 【 网站优化151355 】 【 网络推广146373 】 【 网络技术251813 】 【 AI营销90571


相关推荐: 如何用JavaScript实现文本编辑器_光标和选区怎么处理  中山网站推广排名,中山信息港登录入口?  Laravel如何使用缓存系统提升性能_Laravel缓存驱动和应用优化方案  EditPlus 正则表达式 实战(3)  实现点击下箭头变上箭头来回切换的两种方法【推荐】  昵图网官网入口 昵图网素材平台官方入口  如何快速搭建支持数据库操作的智能建站平台?  javascript中闭包概念与用法深入理解  Laravel API资源(Resource)怎么用_格式化Laravel API响应的最佳实践  如何用VPS主机快速搭建个人网站?  Laravel如何实现多对多模型关联?(Eloquent教程)  如何快速搭建高效可靠的建站解决方案?  Laravel Admin后台管理框架推荐_Laravel快速开发后台工具  公司网站制作需要多少钱,找人做公司网站需要多少钱?  Java遍历集合的三种方式  如何获取上海专业网站定制建站电话?  如何在景安服务器上快速搭建个人网站?  JavaScript 输出显示内容(document.write、alert、innerHTML、console.log)  JS经典正则表达式笔试题汇总  Laravel如何配置和使用缓存?(Redis代码示例)  php485函数参数是什么意思_php485各参数详细说明【介绍】  Python自然语言搜索引擎项目教程_倒排索引查询优化案例  Android自定义listview布局实现上拉加载下拉刷新功能  在centOS 7安装mysql 5.7的详细教程  ChatGPT 4.0官网入口地址 ChatGPT在线体验官网  php增删改查怎么学_零基础入门php数据库操作必知基础【教程】  Linux虚拟化技术教程_KVMQEMU虚拟机安装与调优  图片制作网站免费软件,有没有免费的网站或软件可以将图片批量转为A4大小的pdf?  EditPlus中的正则表达式 实战(1)  微信推文制作网站有哪些,怎么做微信推文,急?  🚀拖拽式CMS建站能否实现高效与个性化并存?  利用vue写todolist单页应用  如何挑选高效建站主机与优质域名?  如何在Windows 2008云服务器安全搭建网站?  Laravel怎么进行数据库事务处理_Laravel DB Facade事务操作确保数据一致性  北京专业网站制作设计师招聘,北京白云观官方网站?  php做exe能调用系统命令吗_执行cmd指令实现方式【详解】  高防服务器如何保障网站安全无虞?  Laravel如何使用查询构建器?(Query Builder高级用法)  php结合redis实现高并发下的抢购、秒杀功能的实例  北京网站制作公司哪家好一点,北京租房网站有哪些?  Laravel如何发送邮件_Laravel Mailables构建与发送邮件的简明教程  如何快速搭建高效香港服务器网站?  简历没回改:利用AI润色让你的文字更专业  Laravel如何发送邮件和通知_Laravel邮件与通知系统发送步骤  教学论文网站制作软件有哪些,写论文用什么软件 ?  详解Nginx + Tomcat 反向代理 如何在高效的在一台服务器部署多个站点  iOS正则表达式验证手机号、邮箱、身份证号等  如何确保西部建站助手FTP传输的安全性?  大连 网站制作,大连天途有线官网?