nodejs第五天(path模块)

1,011 阅读2分钟

path 模块顾名思义,是 node 提供给我们处理文件以及目录的路径的,今天我们就来学习一下 path 中我们常用的一些变量与函数。

一、 path模块

  经过前面的学习,我们知道 path 模块不是在全局中的,所以当我们需要使用的时候,需要我们去require,同时这是一个内置模块,我们不需要写路径。

const Path = require('path');

  同样呢,path模块的一些操作会因为操作系统的不同,所默认的一些操作就会不一样,比如说文档里面说的POSIX和windows,windows大家都知道,但是POSIX是个神马东西,我觉得可能有些人是不清楚的。因为和本文的主题关系不是太大,所以只是简单的说一下,Portable Operation System Interface(可移植操作系统接口) 这就是POSIX的全称,这是为了提高兼容性和程序的可移植性出现的标准,因为早期大家标准不同就很难受。具体的大家可以下午再详细了解。

二、 基本方法

2.1 path.basename()、path.extname()、path.dirname()

  这三个方法分别返回的是路径最后一个部分,extname顾名思义返回扩展名,dirname是返回目录名。

2.2 path.normalize()

  这个方法是用来处理我们可能写的不对的一些路径,比如我们多写了一个斜杠啊,或者是写了相对路径绝对路径等等,它都会帮我们将这个路径变成正确的路径。

2.3 path.join()

  这个方法是将我们传入的路径片段拼接起来,同时在拼接的时候也会调用 path.normalize() 返回一个正确的路径。

2.4 path.resolve()

  这个函数的作用是帮助我们把相对路径转换成绝对路径,是非常有用的。

2.5 path.parse()、path.format()

  这两个方法一看就知道是作用相反的,是格式化和解析的作用。


  我们看到他会将路径解析成我们上面提到过的那几个组成部分,目录、basename还有ext等等。而format的作用正好相反,是将这样的数据变成路径,注意的是: format 对于参数是有优先级的,如果有dir就会忽略root,如果base存在就会忽略ext和name。


  针对于这些路径,其实有个比较有趣的一点是 ./ 这个相对路径,在require里是指当前文件夹,而其他的地方指的其实是node执行的目录路径。

PS:放假回家一趟,堵死了。今天学习了关于path的一些方法,感觉用到的地方也蛮多的,希望多多巩固,谢谢!其实最近一直有想自己做个博客的想法,等有空了就自己敲一个。