细说nodejs的path模块

前言

path 模块是 nodejs 中用于处理文件/目录路径的一个内置模块,可以看作是一个工具箱,提供诸多方法供我们使用,当然都是和路径处理有关的。同时在前端开发中 path 模块出现的频率也是比较高的,比如配置 webpack 的时候等。本文是对该模块中一些常用的方法进行介绍,走,一起学习下吧。

  • 需要注意下,nodejs 中所有的模块(内置,自定义)都需要使用 requier 进行导入,一般导入位置在文件顶部。
const path = require('path'); 

API

basename (获取路径基础名)
  • path.basename(path[,ext])* path:文件/目录路径* ext:(可选)文件扩展名 例如 .js .css 等* 返回值:path 路径的最后一部分
  • 注意:* 如果 path 不是字符串或者给定的 ext 参数不是字符串,则抛出 TypeError* 如果有 ext 参数,当 ext 后缀名与文件名匹配上时返回的文件名会省略文件后缀* 如果 path 尾部有目录分隔符则会被忽略
const path = require("path");

path.basename('./ext/test.js') //test.js
path.basename('./ext/test.js','.js') //test (当后缀名与文件名匹配上时返回的文件名会省略文件后缀)
path.basename('./ext/test.js','.html') //test.js (没有匹配上时返回文件全名)
path.basename('./ext/foo/') // foo (尾部目录分隔符被忽略) 
dirname (获取路径目录名)
  • path.dirname(path)* path:文件/目录路径* 返回值:path 路径的目录名
  • 注意:* 如果 path 不是字符串,则抛出 TypeError* 如果 path 尾部有目录分隔符则会被忽略
const path = require("path");

path.dirname('./foo/bar/baz'); //./foo/bar (相对路径/绝对路径均可)
path.dirname('/foo/bar/baz/'); // /foo/bar (尾部目录分隔符被忽略)
path.dirname('/foo/bar/baz/test.js'); // /foo/bar/baz 
extname (获取路径扩展名)
  • path.extname(path)* path:文件/目录路径* 返回值:path 路径的扩展名,从最后一次出现 ‘.’ 字符到 path 最后一部分的字符串结束,无扩展名则返回空
  • 注意:* 如果 path 不是字符串,则抛出 TypeError
const path = require("path");

path.extname('foo/bar/baz/test.js'); // .js
path.extname('foo/bar/baz');// '' (无扩展名返回 '')
path.extname('foo/bar/baz/.'); // ''
path.extname('foo/bar/baz/test.'); // '.'
path.extname('foo/bar/baz/.test'); // ''
pat
  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
path 模块Node.js 的核心模块之一,用于处理文件路径和目录路径。它提供了一些方法来处理路径字符串,例如将相对路径转换为绝对路径、获取路径中的文件名、扩展名等等。 以下是一些常用的 path 模块方法: - path.join([...paths]):将多个路径拼接成一个路径字符串,使用操作系统特定的分隔符(如 Windows 上的 \ 或 Linux 上的 /)连接路径。 - path.resolve([...paths]):将多个路径解析为一个绝对路径。如果路径是相对路径,则会将其解析为相对于当前工作目录的绝对路径。 - path.basename(path[, ext]):获取路径中的文件名部分。如果指定了 ext 参数,则会剥离掉指定的扩展名。 - path.extname(path):获取路径中的文件扩展名部分,包括点号(.)。 - path.dirname(path):获取路径中的目录路径部分。 - path.normalize(path):规范化路径,去除多余的斜杠、解析 .. 和 . 等符号。 除了这些方法,path 模块还提供了一些其他的方法,例如: - path.parse(path):将路径解析为一个对象,包含 dir、base(文件名和扩展名)、name(文件名)、ext(扩展名)等属性。 - path.format(pathObject):将一个路径对象转换为一个路径字符串。 - path.isAbsolute(path):判断路径是否为绝对路径。 - path.relative(from, to):获取从 from 到 to 的相对路径。 总之,path 模块提供了丰富的方法来处理路径,使用时需要根据具体需求选择合适的方法。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值