var path = require('path');
// 当发现有多个连续的斜杠时,会替换成一个; 当路径末尾包含斜杠时,会保留;
// 在 Windows 系统会使用反斜杠。
var p = path.normalize('foo/bar//baz/asdf/quux/..') ;
var p2 = path.normalize('foo/bar//baz/asdf/quux/../') ;
console.log('p',p,p2); //组合参数中的所有路径,返回规范化后的路径。
var p3 = path.join('a/b/c',"d/c/v");
console.log('p3',p3);
// 返回文件的绝对路径 var p4 = path.resolve('test.js');
var p5 = path.resolve('/path/test.js');
console.log('p4',p4);
console.log('p5',p5); // var ab = path.isAbsolute('test.js');
// console.log('ab',ab);
// 返回从 from 到 to 的相对路径
var res = path.relative('/data/orandea/test/aaa', '/data/orandea/impl/bbb');
console.log('res',res); //path.resolve(from, path.relative(from, to)) == path.resolve(to)
// 文件的文件夹名称
var dir1 = path.dirname('../test.js');
var dir2 = path.dirname('./test.js');
var dir3 = path.dirname('test.js');
var dir4 = path.dirname('/foo/bar/baz/asdf/quux');
//dir1 ..
//dir2 .
//dir3 .
//dir4 /foo/bar/baz/asdf console.log('dir1',dir1);
console.log('dir2',dir2);
console.log('dir3',dir3);
console.log('dir4',dir4);
// 返回后文件基本名称 第二个参数为 后缀名如果存在则返回除去后缀以后的名字
var base1 = path.basename('/foo/bar/baz/asdf/quux.html', '.html');
var base1 = path.basename('/foo/bar/baz/asdf/quux.html', '.htm');
var base2 = path.basename('/foo/bar/baz/asdf/quux.html', 'html');
var base3 = path.basename('/foo/bar/baz/asdf/quux.html');
// base1 quux
// base2 quux.
// base3 quux.html console.log('base1',base1);
console.log('base2',base2);
console.log('base3',base3); // 返回后缀名, 没有则为空
var en1 = path.extname('test.js');
var en2 = path.extname('test');
console.log('en1 ', en1);
console.log('en2 ', en2);
//en1 .js
//en2 // path.sep 路径分隔符 var sp = 'foo/bar/baz'.split(path.sep);
//sp [ 'foo', 'bar', 'baz' ] console.log('sp', sp);
// path.delimiter多个路径之间的分隔符
var del = process.env.PATH .split(path.delimiter); console.log('del', del);
//de [ '/usr/local/bin',
// '/usr/bin',
// '/bin',
// '/usr/sbin',
// '/sbin',
// '/usr/local/bin',
// '/usr/local/git/bin' ]

  

直接运行

NodeJS中 Path 模块的更多相关文章

  1. NodeJS之path模块

    NodeJS之path模块 常用的主要有如下工具函数: 1. path.basename(path[, ext]) 2. path.extname(path) 3. path.dirname(path ...

  2. 在nodejs中引进模块要经历的步骤

    在nodejs中引入模块需要经历如下3个步骤 1.路径分析 2.文件定位 3.编译执行 在nodejs中模块分为两类,一类是nodejs提供的模块,称为核心模块,另一类的用户编写的模块,称为文件模块. ...

  3. Nodejs中关于模块的总结

    关于Nodejs中的模块 概念 Nodejs在ECMAScript的基础上扩展并封装了许多高级特性,如文件访问.网络访问等,使得Nodejs成为一个很好的Web开发平台.基于Nodejs这个平台将We ...

  4. Nodejs中cluster模块的多进程共享数据问题

    Nodejs中cluster模块的多进程共享数据问题 前述 nodejs在v0.6.x之后增加了一个模块cluster用于实现多进程,利用child_process模块来创建和管理进程,增加程序在多核 ...

  5. Nodejs中的模块系统

    一.模块化的定义 ①具有文件作用域 ②具有通信规则:加载和导出规则 二.CommonJS模块规范 1.nodejs中的模块系统,具有文件作用域,也具有通信规则,使用require方法加载模块,使用ex ...

  6. node (02 CommonJs 和 Nodejs 中自定义模块)顺便讲讲module.exports和exports的区别 dependencies 与 devDependencies 之间的区别

    CommonJS 规范的提出,主要是为了弥补当前 JavaScript 没有标准的缺陷.它的终极目标就是:提供一个类似 Python,Ruby 和 Java 语言的标准库,而不只是停留在小脚本程序的阶 ...

  7. NodeJS 笔记 path模块

    path 模块,本模块包含一系列处理和转换文件路径的工具集. path.normalize(path)   normalize函数将不符合规范的路径经过格式化转换为标准路径,解析路径中的.与..外,还 ...

  8. Node.j中path模块对路径的操作

    一.path模块 https://nodejs.org/docs/latest/api/path.html#path_path_join_paths 1.join方法 ==> 该方法将多个参数值 ...

  9. Node.js学习笔记(二) --- CommonJs和Nodejs 中自定义模块

    一. 什么是 CommonJs? JavaScript 是一个强大面向对象语言,它有很多快速高效的解释器. 然而, JavaScript标准定义的 API 是为了构建基于浏览器的应用程序.并没有制定一 ...

随机推荐

  1. 2016 acm香港网络赛 B题. Boxes

    原题网址:https://open.kattis.com/problems/boxes Boxes There are N boxes, indexed by a number from 1 to N ...

  2. python pymysql安装

    ==================pymysql=================== 由于 MySQLdb 模块还不支持 Python3.x,所以 Python3.x 如果想连接MySQL需要安装 ...

  3. lua例子getglobal()

    #include <stdio.h> #define MAX_COLOR 255 extern "C" { #include "lua-5.2.2/src/l ...

  4. HTML使用post方式提交中文内容出现乱码的错误解决方式

    今天在做一个例子的时候,使用post方式提交表单,如果有中文的话,在另一个页面显示出来的时候,总是会出现乱码: 但是将提交方式改为get的时候,就不会出现这种错误. 详细错误见下面图片和代码. HTM ...

  5. Collective Mindsets (easy)(逻辑题)

    Collective Mindsets (easy) Time Limit:1000MS     Memory Limit:262144KB     64bit IO Format:%I64d &am ...

  6. Web框架的引入

    为什么会有web框架 有了上一篇内容,静态.动态web服务器的实现,已经掌握了客户端请求到服务器处理的机制.在动态资源处理中,根据请求 .py 导入模块应用,然后调用应用入口程序实现动态处理.但是在真 ...

  7. 注册会计师带你用Python进行探索性风险分析(一)

    https://blog.csdn.net/BF02jgtRS00XKtCx/article/details/78519378

  8. What happens when we continue stacking deeper layers on a “plain” convolutional neural network?

    http://cs231n.stanford.edu/slides/2017/cs231n_2017_lecture9.pdf The deeper model performs worse, but ...

  9. Python菜鸟之路:Python基础-线程、进程、协程

    上节内容,简单的介绍了线程和进程,并且介绍了Python中的GIL机制.本节详细介绍线程.进程以及协程的概念及实现. 线程 基本使用 方法1: 创建一个threading.Thread对象,在它的初始 ...

  10. 代替print输出的PY调试库:PySnooper

      PySnooper¶ Github:https://github.com/lotapp/PySnooper pip install pysnooper 使用:分析整个代码 @pysnooper.s ...