处理与转换路径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. GPRS 智能门禁控制器

    本模块居于GPRS 2G网络,信号覆盖广,而且好. 主要用于微信门禁等,提供用户服务端搭建及相关接口. 您可以向门禁发送开门信号,并提醒开门成功的信号反馈. 同时支持发送开门ID号,并反馈成功ID号

  2. Mysql update多表联合更新

    下面我建两个表,并执行一系列sql语句,仔细观察sql执行后表中数据的变化,很容易就能理解多表联合更新的用法 student表                                      ...

  3. java实现视频转码

    废话不多说,直接上代码: 这是转码工具类: package com.gcsoft.pyas.sysbase.utils; import com.gcsoft.pyas.AppProperties; i ...

  4. Slenium入门

    selenium 为浏览器测试框架,可以调用浏览器webdriver模拟浏览器操作360打开Chrome: from selenium import webdriver from selenium.w ...

  5. sizeof(类名字)

    析构函数,跟构造函数这些成员函数,是跟sizeof无关的,因为我们的sizeof是针对实例,而普通成员函数,是针对类体的,一个类的成员函数,多个实例也共用相同的函数指针,所以自然不能归为实例的大小. ...

  6. PHP设计模式 - 命令模式

    命令模式:在软件系统中,“行为请求者”与“行为实现者”通常呈现一种“紧耦合”.但在某些场合,比如要对行为进行“记录.撤销/重做.事务”等处理,这种无法抵御变化的紧耦合是不合适的.在这种情况下,如何将“ ...

  7. 机器学习中什么是端到端的学习(end-to-end learning)?

    相对于深度学习,传统机器学习的流程往往由多个独立的模块组成,比如在一个典型的自然语言处理(Natural Language Processing)问题中,包括分词.词性标注.句法分析.语义分析等多个独 ...

  8. json对象转js对象

    json数据: { "YD1": 0, "YD2": 0, "YD3": 0, "YD4": 0, "YD5& ...

  9. Linux 下面 oracle 数据库连接工具的安装还有特殊字符密码登录的设置

    1. 下载Oracle的连接客户端 https://www.oracle.com/database/technologies/instant-client/downloads.html 2. 我这里仅 ...

  10. java中对对象进行判空的操作--简洁编码

    java中对对象进行判空的操作 首先来看一下工具StringUtils的判断方法: 一种是org.apache.commons.lang3包下的: 另一种是org.springframework.ut ...