Node.js——path(路径操作)模块

ops/2025/1/15 4:33:42/

个人简介

👀个人主页: 前端杂货铺
🙋‍♂️学习方向: 主攻前端方向,正逐渐往全干发展
📃个人状态: 研发工程师,现效力于中国工业软件事业
🚀人生格言: 积跬步至千里,积小流成江海
🥇推荐学习:🍍前端面试宝典 🎨100个小功能 🍉Vue2 🍋Vue3 🍓Vue2/3项目实战 🥝Node.js实战 🍒Three.js

🌕个人推广:每篇文章最下方都有加入方式,旨在交流学习&资源分享,快加入进来吧

内容参考链接
Node.js(一)Node.js——fs(文件系统)模块

文章目录

    • 前言
    • path 模块
    • 总结

前言

上篇文章我们学习了文件系统模块,本篇文章我们学习 Node.js 的另一核心模块 —— path 模块。

通过 path 模块,可以拼接、解析、格式化和规范化路径,避免因为操作系统的不同路径格式而导致的错误(如 Windows 使用反斜杠 \,而 Linux 和 macOS 使用正斜杠 /)。


path 模块

引入 path 模块的方式如下。

const path = require('path')
  • resolve:将路径序列解析为绝对路径,从右到左依次处理每个路径片段,直到构建出一个绝对路径为止。
  • sep:提供当前操作系统的路径分隔符(Linux 和 macOS 为 ‘/’,Windows 为 ‘’)。
  • parse:将路径字符串解析为对象,包含 root、dir、base、ext 和 name 属性。
  • basename:返回路径中的最后一部分(文件名)。可选参数 ext 用于去除文件扩展名。
  • dirname:返回路径中的目录部分。
  • extname:返回路径中文件的扩展名。
const path = require('path')// 拼接规范的绝对路径
console.log('规范的绝对路径: ', path.resolve(__dirname, 'index.html'))// 获取操作系统的路径分隔符
console.log('操作系统的路径分隔符: ', path.sep);const str = '/Users/dream/code-project/node-learn/index.html'// 解析路径并返回对象
console.log('解析路径: ', path.parse(str))
// 获取路径的基本名称
console.log('路径的基本名称: ', path.basename(str))
// 获取路径的目录名
console.log('路径的目录名: ', path.dirname(str))
// 获取路径的扩展名
console.log('路径的扩展名: ', path.extname(str))

在这里插入图片描述


总结

本篇文章我们学习了如何使用 Node.js 进行路径操作。包括绝对路径、获取操作系统的路径分隔符、解析路径、路径的基本名称、路径的目录名、路径的扩展名等。

以上介绍的均为常用 API,更多 API 的使用请参照参考资料中的内容!

好啦,本篇文章到这里就要和大家说再见啦,祝你这篇文章阅读愉快,你下篇文章的阅读愉快留着我下篇文章再祝!


参考资料:

  1. Node.js教程(菜鸟教程)
  2. Node.js零基础视频教程(尚硅谷 · 李强)

在这里插入图片描述



http://www.ppmy.cn/ops/149899.html

相关文章

[Python学习日记-75] 计算机基础与网络

[Python学习日记-75] 计算机基础与网络 简介 计算机基础 什么是网络编程 计算机网络 简介 本篇主要介绍的计算机基础是浓缩的,这是因为我们主要学习的是 Python,而 Python 主要是为了开发应用程序的,并不会用它来开发操作系统和嵌入式程序…

Facebook 跨文化交流:打破国界的社交纽带

在全球化日益加深的今天,跨文化交流变得尤为重要。Facebook作为全球最大的社交媒体平台之一,已经成为了连接不同文化、促进全球沟通的重要工具。它不仅为用户提供了一个展示自我、交流思想的平台,也通过技术创新帮助打破了地域和语言的界限&a…

使用 Docker 构建 preboot 交叉编译环境

ASR1606/ASR1603 的 preboot 代码需要在 Linux 环境下编译,通常使用 VMware 或者 VirtualBox 软件创建一个 Linux 虚拟机,在虚拟机中做交叉编译。但 preboot 不是那种需要经常编译的代码,完全可以将 preboot 的编译环境制作成 docker 镜像&am…

一键获取Linux主机配置信息shell脚本,含网卡详情,网卡绑定等

cat > /tmp/get_os_info.sh <<"EOF"#!/bin/bashexport LANG=en_US.UTF-8# 如果 cat /proc/1/cgroup | grep docker | wc -l 大于0 或 systemd-detect-virt 返回 docker,则为 docker容器,# 如果 virt-what 返回 kvm或vmware或hyperv或xen、xen-hvm、lxc 或…

【Rust】数据类型

目录 思维导图 1. 数据类型概述 1.1 标量类型 1.1.1 整数类型 1.1.2 浮点数类型 1.1.3 布尔类型 1.1.4 字符类型 1.2 复合类型 1.2.1 元组类型 1.2.2 数组类型 2. 类型注解与类型推断 3. 整数溢出处理 4. 数字运算 5. 示例 思维导图 1. 数据类型概述 Rust是一种静…

Centos9 + Docker 安装 MySQL8.4.0 + 定时备份数据库到本地

Centos9 + Docker 安装 MySQL8.4.0 + 定时备份数据库到本地 创建目录,创建配置文件启动容器命令定时备份MySQL执行脚本Linux每日定时任务命令文件内参数其他时间参数AT一次性定时任务创建目录,创建配置文件 $ mkdir -p /opt/mysql/conf$ vim /opt/mysql/conf/my.cnf[mysql] #…

Mysql--基础篇--事务(ACID特征及实现原理,事务管理模式,隔离级别,并发问题,锁机制,行级锁,表级锁,意向锁,共享锁,排他锁,死锁,MVCC)

在MySQL中&#xff0c;事务&#xff08;Transaction&#xff09;是一组SQL语句的集合&#xff0c;这些语句一起被视为一个单一的工作单元。事务具有ACID特性&#xff0c;确保数据的一致性和完整性。通过事务&#xff0c;可以保证多个操作要么全部成功执行&#xff0c;要么全部不…

Stable diffusion的SDXL模型,针不错!(含实操)

与之前的SD1.5大模型不同&#xff0c;这次的SDXL在架构上采用了“两步走”的生图方式&#xff1a; 以往SD1.5大模型&#xff0c;生成步骤为 Prompt → Base → Image&#xff0c;比较简单直接&#xff1b;而这次的SDXL大模型则是在中间加了一步 Refiner。Refiner的作用是什么呢…