Node内置模块 【path模块】

news2024/11/25 12:46:30

文章目录

  • 🌟前言
  • 🌟path模块
  • 🌟引用模块
  • 🌟常用属性
    • 🌟path.sep
      • 🌟在MacOSX、 Unix、Linux操作系统上:
      • 🌟在 Windows 上:
  • 🌟常用方法
  • 🌟将路径转换为对象格式
  • 🌟将Linux系统的路径字符串转换为对象格式:
  • 🌟写在最后

在这里插入图片描述

🌟前言

哈喽小伙伴们,新的专栏 Node 已开启;这个专栏里边会收录一些Node的基础知识和项目实战;今天我们带领大家初识一下 Node内置模块 path模块 ;让我们一起来看看吧🤘

🌟path模块

path 模块主要为了更加方便的处理文件和目录的路径。

path 模块根据 node 应用程序所在的系统环境不同而呈现不同的默认操作。像在 Windows 操作系统中,path模块会根据 Windows 的路径规范来操作,因此在开发过程中,如果需要操作路径必须通过path模块来处理路径避免切换平台出现错误。

🌟引用模块

可以通过以下方式引入path模块

const path = require("path")

🌟常用属性

属性描述
path.sep获取平台文件的路径分隔符,windows为反斜杠’’ 或 Unix为正斜杠’/'。
path.delimiter获取提供平台特定PATH环境变量的路径分隔符 windows为’;‘、Unix为’:'。

🌟path.sep

🌟在MacOSX、 Unix、Linux操作系统上:

'foo/bar/baz'.split(path.sep);
// 返回: ['foo', 'bar', 'baz']

🌟在 Windows 上:

'foo\\bar\\baz'.split(path.sep);
// 返回: ['foo', 'bar', 'baz']

注意:操作系统不同路径表现形式也不同。在 UnixLinux系统上,路径分隔符为 ‘/’,在 Microsoft Windows 系统上,路径分隔符为 ‘\’。

🌟常用方法

方法描述
path.normalize(path)规范化路径,注意’…’ 和 ‘.’
path.join([path1][, path2][, …])用于连接路径。该方法会正确使用当前系统的路径分隔符,Unix系统是"/“,Windows系统是”"。
`path.resolve([…paths])将路径解析为绝对路径。
path.isAbsolute(path)判断参数 path 是否是绝对路径。
path.relative(from, to)用于将路径转为相对路径。
path.dirname(path)返回路径中代表文件夹的部分
path.basename(path[, ext])返回路径中的文件名
path.extname(path)返回路径中文件的扩展名,即路径中最后一个’.'之后的部分
path.parse(pathString)返回路径字符串的对象格式
path.format(pathObject)从对象中返回路径字符串( path.parse 相反)

🌟将路径转换为对象格式

返回路径字符串的对象格式:

path.parse(pathString)

🌟将Linux系统的路径字符串转换为对象格式:

# Linux
path.parse('/home/user/dir/file.txt');

{
    root: '/',
    dir: '/home/user/dir',
    base: 'file.txt',
    ext: '.txt',
    name: 'file'
}

┌─────────────────────┬────────────┐
│          dir        │    base    │
├──────┬              ├──────┬─────┤
│ root │              │ name │ ext │
"  /    home/user/dir / file  .txt "
└──────┴──────────────┴──────┴─────┘

Windows系统的路径字符串转换为对象格式:

# Windows
path.parse('C:\\path\\dir\\file.txt');

{
    root: 'C:\\',
    dir: 'C:\\path\\dir',
    base: 'file.txt',
    ext: '.txt',
    name: 'file'
}

┌─────────────────────┬────────────┐
│          dir        │    base    │
├──────┬              ├──────┬─────┤
│ root │              │ name │ ext │
" C:\      path\dir   \ file  .txt "
└──────┴──────────────┴──────┴─────┘

🌟写在最后

更多Node知识以及API请大家持续关注,尽请期待。各位小伙伴让我们 let’s be prepared at all times!

✨原创不易,还希望各位大佬支持一下!
👍 点赞,你的认可是我创作的动力!
⭐️ 收藏,你的青睐是我努力的方向!
✏️ 评论,你的意见是我进步的财富!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/447845.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【python视图1】networkx操作Graph图

一、说明 数据可视化需要显示种种数据,matplotlib负责曲线类画图,然而类似于图论的操作用什么方法。这里用networkx程序包完成。本文专门介绍这种程序包的用法。 二、生成图(Creating a graph) 2.1 创建一个没有节点和边的空图。…

Linux:centos 7:查看运行级别 控制init运行级别 已安装图形化以后设置开机进入图形化或命令行

0 target 关机状态,使用该级别时将关闭主机 1 rescue.target 单用户模式,不需要密码验证即可登录系统,多用于系统维护 …

HTTP 的工作原理

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录 前言一、简单 HTTP二、HTTP 连接请求 I请求Ⅱ 持久 HTTP并执行 HTTP默认浏览器连接设置总结 前言 在处理 Web 性能监控或优化时,了解 HTTP 协议的基础知…

leetcode每日一题——美团笔试题【3】

第一题: 股票的最大利润 假设把某股票的价格按照时间先后顺序存储在数组中,请问买卖该股票一次可能获得的最大利润是多少?示例 1:输入: [7,1,5,3,6,4] 输出: 5 解释: 在第 2 天(股票价格 1)的时候买入,在…

UWB隧道人员定位技术应用,施工作业安全精准保障

隧道施工的安全不仅关系到工程项目的质量和施工效率,也关系到我国的资金安全、施工人员和人民的生命财产安全。如何有效加强隧道施工的安全管理能力,成为隧道施工企业管理者最关心的问题。国家铁道局在《关于加强铁路隧道工程安全工作的若干意见》中指出…

人力资源软件的六个功能,你知道吗?

企业组织越来越多地转向通过人力资源软件来简化他们的人力资源运作。在疫情开始后,人力资源软件的采用尤其迅猛,因为组织希望无缝地管理他们的远程和混合员工。根据SkyQuest的调查人力资源技术市场预计到2028年将达到356.8亿美元。 如果您正在考虑采用人…

面试题思路分享以及延伸问题探讨三

面试题思路分享以及延伸问题探讨 1.前言2. 环形链表初阶2.1 审题2.2 代码实现以及紧急情况的处理方法2.3 延伸问题2.3.1 为什么slow和fast一定会遇上?2.3.2 走n步会是什么样的情况? 3. 环形链表进阶3.1 审题3.2 代码实现3.3 方法二:相交链表法 4. 复制带随机指针的链表4.1审题…

vue3组件二次封装Ui处理

vue 组件二次封装Ui处理 vue 组件二次封装Ui处理 在Vue开发中,我们常常需要使用UI框架提供的组件。但是UI框架的组件可能并不符合我们的需求,这时候就需要进行二次封装。下面是一些关于Vue组件二次封装Ui处理的技巧: 常规时候咱们使用组件…

深元AI盒子在矿山安全生产中实现皮带跑偏、异物、煤流量、大块煤等识别

摘要:随着技术的发展,矿山安全生产已经从传统的人工监测逐步转向现代化智能化。本文旨在探讨矿山安全生产AI盒子在皮带跑偏、异物、煤流量和大块煤之外的功能,以期进一步提高矿山生产的安全性和效率。 正文: 一、引言 矿山安全生…

【获奖案例巡展】信创先锋之星——中信证券基于国产图数据库构建企业图谱的应用实践

为表彰使用大数据、人工智能等基础软件为企业、行业或世界做出杰出贡献和巨大创新的标杆项目,星环科技自2021年推出了“新科技 星力量” 星环科技科技实践案例评选活动,旨在为各行业提供更多的优秀产品案例,彰显技术改变世界的力量&#xff0…

vue2、vue3实现暗黑模式

1、序言 elementPlus、naive UI这些UI组件里面封装好了暗黑模式,直接使用相关api即可实现暗黑模式切换功能,而elementUI没有封装好,我们可以看看elementPlus、naive UI如何实现暗黑模式,然后在elementUI中模仿,从而实现…

【C++】模板初识

C模板初识 1.泛型编程2.函数模板2.1.函数模板概念2.2.函数模板格式2.3.函数模板使用的原理2.4.函数模板的实例化2.5.模板参数的匹配原则 3.类模板3.1.类模板格式3.2.类模板的实例化 1.泛型编程 在实际编程中,经常会用到交换函数。比如有整型值的交换,浮…

Nacos 鉴权系统源码讲解

目录 1. 介绍 2. Nacos SPI 鉴权机制 3. 后台管理 / HTTP 接口鉴权 4. 客户端 / GRPC 接口鉴权 1. 介绍 鉴权功能默认没有开启,开启后的效果就是 Nacos 的接口需要用户登录并且具有权限才能调用该接口。例如注册实例、发布配置等。 鉴权也就是 我是谁、我能干…

探讨接口测试颗粒度

偶然间在论坛上看到一个帖子,帖子内容如下: 假设现在有一个新增商品的接口,返回的参数中有新增商品的 id(每次返回的 id 都不一样)、success(判断是否成功,0 失败 1 成功) 1. 接口…

代码随想录之对称二叉树

本内容来自代码随想录 使用后序遍历。 class Solution { public:bool traversal(TreeNode* left,TreeNode* right){//处理空节点情况if (left nullptr && right ! nullptr) return false;else if (left ! nullptr && right nullptr) return false;else if …

Python人工智能之混合高斯模型运动目标检测详解分析

搬运工项目,换个平台纪录,之前的广告太多 运动目标检测是计算机视觉领域中的一个重要内容,其检测效果将会对目标跟踪与识别造成一定的影响,本文将介绍用Python来进行混合高斯模型运动目标检测,感兴趣的朋友快来看看吧 …

4.2寸黑白红TFT电子标签【基站版】

ESL_TFT_4.2_V4 产品参数 产品型号 ESL_TFT_4.2_V4 尺寸(mm) 101.7*84.4*6.5mm 显示技术 TFT反射式 显示区域(mm) 84.8(H) * 63.6(V) 分辨率(像素) 400*300 像素尺寸(mm) 0.212x0.212 显示颜色 黑/白/红 视觉角度 45/45/60/60 工作温度 -20-70℃ 产品重量…

Spring6从入门到精通 第一章 带你玩转Spring

这里写目录标题 一 Spring框架产生的原因二 Spring6配置的关键环节 一 Spring框架产生的原因 传统的JavaWeb存在着耦合度较高的问题,而且实现完整的的MVC三层架构,开发成本过大,因此出现了Spring这个轻量级的开发框架,相当于建筑里…

C++初阶之命名空间的使用

目录 前言 命名空间的介绍 1.1 命名空间的定义 1.2 命名空间的使用 C输入&输出 总结: 前言 今天小编就给大家带来C的相关内容了,相对于C语言而言C的语法会比较复杂一点点,但是我相信大家通过自己的努力,也会很快的上手…

使用AIDEGen进行AOSP开发

什么是AIDEGen AIDEGen,大概是“Android IDE (helper) Generator”的简写,是 AOSP 源代码树中的一个工具,它允许从 Android Studio 等通常仅为非平台应用程序开发配置的 IDE 中处理系统应用程序。 AIDEGen 旨在自动化项目设置过程&#xff…