处理与转换路径path

  1. normalize该方法将非标准路径字符串转换为标准路径字符串,在转换过程中执行以下操作:

①解析路径字符串中的’..’字符串与’.’字符串,返回解析后的标准路径。

②将多个斜杠字符串转换为一个斜杠字符串,例如将’\\’转换为’\’。

③将windows操作系统中的反斜杠字符串转换为正斜杠字符串。

④如果路径字符串以斜杠字符串结尾,则在转换后的完整路径字符串末尾保留该斜杠字符串。

Path.normalize℗

参数:参数值为需要被转换的路径字符串,该方法返回转换后的路径字符串。

2. join 该方法将对参数值字符串结合为一个路径字符串

Path.join([path1],[path2],[…])

3. resolve 该方法一应用程序根目录为起点,根据所有的参数值字符串解析出一个绝对路径。

Path.resolve([path1],[path2],[…])

①以应用程序根目录为起点,解析第一个参数值字符串

②如果该参数值字符串不以’..’ , ’.’ , ’/’开头,则将参数值字符串解析为应用程序根目录下的某个子目录,将当前参考目录定为该子目录的绝对路径。

③如果该参数值字符串以’..’ 开头,则将’..’ 解析为应用程序根目录(文件所在的目录)的上级目录,然后将’..’ 后的字符串解析为该目录下的某个子目录,将当前参考目录定为该子目录的绝对路径。

④如果该参数值字符串以’.’ 开头,则将’.’ 解析为应用程序根目录(文件所在的目录)的当前目录,即应用程序根目录,然后将’.’ 后的字符串解析为应用程序根目录下的某个子目录,将当前参考目录定为该子目录的绝对路径。

⑤如果该参数值字符串以’/’ 开头,表示指定了一个绝对路径,则将当前参考目录定为该绝对路径。

⑥如果没有下一个参数值字符串,则resolve方法返回当前参考目录的绝对路径。

⑦如果存在下一个参数值字符串,则以当前参考目录为起点,解析下一个参数值字符串。

4. relative方法

该方法用于获取两个路径之间的相对关系,path.relative(from,to)

参数:两个参数均为一个路径,该路径可以为相对路径,也可以为绝对路径,可以为一个文件的路径,也可以为一个目录的路径。

5. dirname方法用于获取一个路径中目录名。

Path.dirname(p)

6. basename方法,用于获取一个路径中的文件名。

Path.basename(p,[ext])

参数:p参数必须为一个文件的完整路径,可以为相对路径,也可以为绝对路径。ext参数值用于在方法返回的文件名中去除该文件的扩展名,因此该参数值必须等于p参数值中指定文件的扩展名(以’.’ 开始),否则不能去除该扩展名。该方法返回p参数值中指定文件的文件名,当ext参数被指定后,该文件中不包含文件扩展名。

7. Extname 获取一个路径中的扩展名

Path.extname(p)

8. Path.parse(url) 路径解析 

Path.parse(url)例子如下:

解析的结果是一个对象,对象中重点是ext属性,可以用来判断文件格式。

9. Path.format({})作用与path.parse(url)相反,把解析的对象还原成原来的url地址。

10. Path.isAbsolute(path)用于判断是不是一个绝对路径。是返回true,否false。

node基础学习——path的处理与路径转换的更多相关文章

  1. Node.js实战项目学习系列(5) node基础模块 path

    前言 前面已经学习了很多跟Node相关的知识,譬如开发环境.CommonJs,那么从现在开始要正式学习node的基本模块了,开始node编程之旅了. path path 模块提供用于处理文件路径和目录 ...

  2. node基础学习——操作文件系统fs

    操作文件系统fs 1.在Node.js中,使用fs模块来实现所有有关文件及目录的创建.写入及删除.在fs模块中,所有对文件及目录的操作都可以使用同步与异步两种方法,具有Sync后缀的方法均为同步方法. ...

  3. node基础学习——http基础知识-01-客户单请求

    <一> HTTP基础createServer()相关事件介绍 1. 创建HTTP服务器 server = http.createServer([requestListener]) // 下 ...

  4. Java基础学习-Path环境变量的配置

    1.为什么要进行Path环境变量的配置       程序的编译和执行需要使用到javac和java命令,所以只能在bin目录下写程序,而实际开发中,我们不可能将程序全部写到bin目录下,所以我们不许让 ...

  5. node基础学习——http基础知识-02-http响应数据流

    <一> 发送服务器端响应流 在createServer()方法的参数值回调函数或服务器对象的request事件函数中的第二个参数值为一个http.ServerResponse对象,可以利用 ...

  6. Node.js学习看这里:基础、进阶、文章

    Node.js是基于Chrome JavaScript运行时建立的一个平台,实际上它是对Google Chrome V8引擎进行了封装,它主要用于创建快速的.可扩展的网络应用. Node.js采用事件 ...

  7. 零基础学习前端1-1配置node及npm环境变量

    零基础学习前端1-1配置node及npm环境变量 ## 1-1配置node及npm环境变量 首先:下载node 可以直接去官方网站下载 1.首先从官网下载安装包 https://nodejs.org/ ...

  8. Node.js系列基础学习----安装,实现Hello World, REPL

    Node.js基础学习 简介 简单的说 Node.js 就是运行在服务端的 JavaScript.Node.js 是一个基于Chrome JavaScript 运行时建立的一个平台.Node.js是一 ...

  9. Node.js系列基础学习-----回调函数,异步

    Node.js基础学习 Node.js回调函数 Node.js异步编程的直接体现就是回调,异步编程依托回调来实现,但不是异步.回调函数在完成任务后就会被调用,Node有很多的回调函数,其所有的API都 ...

随机推荐

  1. OpenShift 4.2 etcd operatorhub离线环境部署

    本文记录在OperatorHub中存在界面但缺少镜像的环境下如何安装部署.感谢王征提供的大力支持和指导. 现在一个在线环境找到etcd所需要的镜像 quay.io/coreos/etcd-operat ...

  2. 玩转Linux

    玩转Linux操作系统 说明:本文中对Linux命令的讲解都是基于名为CentOS的Linux发行版本,我自己使用的是阿里云服务器,系统版本为CentOS Linux release 7.6.1810 ...

  3. Bitmap通过getWidth和getHeight获取尺寸不符 -- 误以为是Matrix失效(哈)

    参考:Bitmap通过getWidth和getHeight获取尺寸不符 因为项目需要我想做个这样的地图出来 这个图的的分辨率是1190 * 666的 在地图上定位,我底图是固定分辨率的,那么算个坐标就 ...

  4. 使用vue搭建应用四引入axios

    Axios 是一个基于 promise 的 HTTP 库,可以用在浏览器和 node.js 中 特性 从浏览器中创建 XMLHttpRequests 从 node.js 创建 http 请求 支持 P ...

  5. (转)Intellij Idea工具栏添加打开选中文件的资源管理器位置

    背景:在idea的view>toolbar上面添加工具按钮,能够简化操作,现在添加打开资源管理按钮,后续功能待研究 Intellij Idea工具栏添加打开选中文件的资源管理器位置 工具栏-右击 ...

  6. Spring boot + mybatis + oracle代码生成器

    在pom文件中加入依赖: <build> <plugins> <!--逆向工程--> <plugin> <groupId>org.mybat ...

  7. 搭建mqtt服务器apollo

    使用的apollo,官网太慢,附上百度云下载地址: 链接:https://pan.baidu.com/s/1NIq6R71hlyPuaUBwPoMPNg 提取码:36vw 原文链接:https://b ...

  8. 【剑指offer】对称的二叉树

    题目描述 请实现一个函数,用来判断一颗二叉树是不是对称的.注意,如果一个二叉树同此二叉树的镜像是同样的,定义其为对称的. 分析:从上到下直接遍历,利用栈或者队列暂存结点,注意结点的存和取都是成对的 c ...

  9. [终极巨坑]golang+vue开发日记【二】,登陆界面制作(一)

    写在前面 本期内容是适合第一次使用vue或者golang开发的,内容会以实战的形式来讲解.看懂本段内容需要了解基础内容有html,css,最好可以看一下vue的基础.并且这里的每个知识点不可能详细解说 ...

  10. pytest_命令行传参

    前言 命令行参数是根据命令行选项将不同的值传递给测试函数,比如平常在cmd执行"pytest --html=report.html",这里面的”--html=report.html ...