path模块是node.js中处理路径的核心模块。可以很方便的处理关于文件路径的问题。

join() 将多个参数值合并成一个路径

const path = require('path');
console.log(path.join('./a', 'b', 'c'));

basename() 获取路径中的文件名

const path = require('path');
//获取文件名,包含扩展名
console.log(path.basename('./a/b/c/1.txt'));
//获取文件名,去掉扩展名
console.log(path.basename('./a/b/c/1.txt', '.txt'));

extname() 获取路径中的扩展名

const path = require('path');
//获取文件中的扩展名
console.log(path.extname('./a/b/c/1.txt'));

sep 返回操作系统指定的路径分割符

const path = require('path');
console.log(path.sep);
console.log(path.win32.sep);
console.log(path.posix.sep);

delimiter 返回操作系统环境变量的分割符

const path = require('path');
console.log(path.delimiter);
console.log(path.win32.delimiter);
console.log(path.posix.delimiter);

normalize() 将非标准的路径转换成标准路径,解析像 '.' ,'..',或多个杠。

const path = require('path');
console.log(path.normalize('./a/b/../../c'));
console.log(path.normalize('./a//b//.././c'));

resolve() 返回绝对路径

const path = require('path');
console.log(path.resolve('./a/b/../c/./d'));

isAbsolute() 判断是否为绝对路径

const path = require('path');
console.log(path.isAbsolute('./a/b/../c/./d'));
console.log(path.isAbsolute('E:/a'));

parse() 解析一个路径,返回一个带有属性的对象

const path = require('path');
console.log(path.parse('./a/b/../c/./d/1.txt'));

relative() 返回参数一到参数二的相对路径

const path = require('path');
console.log(path.relative('./a/b/c', './a/d'));

  

node.js中path路径模块的使用的更多相关文章

  1. node.js中使用http模块创建服务器和客户端

    node.js中的 http 模块提供了创建服务器和客户端的方法,http 全称是超文本传输协议,基于 tcp 之上,属于应用层协议. 一.创建http服务器 const http = require ...

  2. 关于Node.js中的路径问题

    在前端学习过程中,涉及到路径的问题非常多,相对路径,绝对路径等.有时候明明觉得没问题,但是还是会出错.或者说线下没问题,但是到了线上就出现问题,因此弄懂路径问题,非常关键.我们需要知道为什么这个地方既 ...

  3. node.js中fs文件系统模块的使用

    node.js中为我们提供了fs文件系统模块,实现对文件或目录的创建,修改和删除等操作. fs模块中,所有的方法分为同步和异步两种实现. 有 sync 后缀的方法为同步方法,没有 sync 后缀的方法 ...

  4. node.js中通过stream模块实现自定义流

    有些时候我们需要自定义一些流,来操作特殊对象,node.js中为我们提供了一些基本流类. 我们新创建的流类需要继承四个基本流类之一(stream.Writeable,stream.Readable,s ...

  5. node.js中使用zlib模块进行数据压缩和解压

    我们可以使用 zlib 模块来对数据进行压缩和解压处理,减小数据体积,加快传输速度. 一.通过创建转换流,对文件进行压缩和解压 const fs = require('fs'); const zlib ...

  6. 在node.js中使用mongose模块

    对象与文档相对应 创建项目目录,用root进入 # mkdir /home/test/part9/ 直接# npm install mongoose,报错如下 ../node_modules/nan/ ...

  7. Node.js权威指南 (12) - Node.js中的其他模块

    12.1 使用dns模块解析域名 / 313 12.1.1 使用resolve方法将域名解析为DNS记录 / 313 12.1.2 使用lookup方法查询IP地址 / 315 12.1.3 使用re ...

  8. node.js第二天之模块

    一.模块的定义 1.在Node.js中,以模块为单位划分所有功能,并且提供了一个完整的模块加载机制,这时的我们可以将应用程序划分为各个不同的部分. 2.狭义的说,每一个JavaScript文件都是一个 ...

  9. 初步揭秘node.js中的事件

    当你学习node.js的时候,Events是一个非常重要的需要理解的事情.非常多的Node对象触发事件,你能在文档API中找到很多例子.但是关于如何写自己的事件和监听,你可能还不太清楚.如果你不了解, ...

随机推荐

  1. spark submit参数调优

    在开发完Spark作业之后,就该为作业配置合适的资源了.Spark的资源参数,基本都可以在spark-submit命令中作为参数设置.很多Spark初学者,通常不知道该设置哪些必要的参数,以及如何设置 ...

  2. 关于缓冲的认识---Frame Buffer

    关于缓冲的认识---Frame Buffer 重点来了:

  3. 移植Valgrind检测Android JNI内存泄漏

    1.相关工具 Valgrind:从Valgrind官网下载最新的源码包,我这里用的是:valgrind 3.14.0 (tar.bz2) [17MB] - 9 October 2018. Ubuntu ...

  4. No input file specified.

    no input file specified 解决方法 2018年02月23日 14:25:07 tiramisuer8023 阅读数:36607   版权声明:本文为博主原创文章,未经博主允许不得 ...

  5. Raspberry3B installation

    树莓派系统安装有两种方式,使用镜像安装和使用NOOBS安装.镜像方式安装传统,捣鼓的东西多一些.所以就使用NOOBS吧,NOOBS(New Out Of Box Software)开箱即用的,树莓派官 ...

  6. 3076: 神经网络(bfs和拓扑排序)

    3076: 神经网络 时间限制: 1 Sec  内存限制: 125 MB提交: 7  解决: 5[提交][状态][讨论版][命题人:外部导入][Edit] [TestData] [同步数据] 题目描述 ...

  7. 理解OpenShift(3):网络之 SDN

    理解OpenShift(1):网络之 Router 和 Route 理解OpenShift(2):网络之 DNS(域名服务) 理解OpenShift(3):网络之 SDN 理解OpenShift(4) ...

  8. 学习笔记之scikit-learn

    scikit-learn: machine learning in Python — scikit-learn 0.20.0 documentation https://scikit-learn.or ...

  9. web--webstorm的一些常用快捷键

    Webstorm的一些常用快捷键   下面是Webstorm的一些常用快捷键: Alt+回车 导入包,自动修正 1. ctrl + shift + n: 打开工程中的文件,目的是打开当前工程下任意目录 ...

  10. centos 7 安装sql 审核工具 inception + archer

    系统环境: Centos7 + python2.7 + python3 .... 下载 源码地址:https://github.com/mysql-inception/inception Incept ...