const path=require('path');

//basename('绝对路径','截取的后缀') 返回文件的扩展名
let a=path.basename('C:\\temp\\myfile.html');
console.log('basename返回:'+a);//myfile.html
let b=path.basename('C:\\temp\\myfile.html','.html');
console.log('basename返回:'+b);//myfile //dirname('文件夹路径')返回文件夹路径
let c=path.dirname('/foo/bar/baz/asdf/quux/index.html');
console.log('dirname返回:'+c);// 返回: '/foo/bar/baz/asdf' //extname('文件路径')返回文件的扩展名
let d=path.extname('/foo/bar/baz/asdf/quux/index.html');
console.log('extname返回:'+d)//.html //format({})返回对象拼成的字符串路径
//对象属性 dir ext root base name
//如果dir存在 root被忽略
//如果base存在 ext 和 name被忽略
let e=path.format({
root:'c:/myfile',
name:'/文件夹',
ext:'.html'
});
console.log('format()返回:'+e) //format()返回:c:/myfile/文件夹.html //isabsolute('路径')判断一个路径是否是绝对路径 返回bool
let f1=path.isAbsolute('./src/index.js');//false
let f2=path.isAbsolute('/src/index.js');//true
console.log(f1,f2); //join(字符串片段)//返回字符串片段拼接成的路径
let g1=path.join('A','B','C','D');
console.log(g1);// A\B\C\D
let g2=path.join('A','B','C','D','./');
console.log(g2);// A\B\C\D\
let g3=path.join('A','B','C','D','../../');
console.log(g3);// A\B\ //normalize('路径')用于规范化给定的路径
let h1=path.normalize('');//返回.
console.log(h1);
let h2=path.normalize('C:\\temp\\\\foo\\bar\\..\\');
console.log(h2);// C:\temp\foo\ //pare('路径')解析路径 与format()相反 ************重要
let i=path.parse('c:/myfile/文件夹.html');
console.log(i);
/**
* { root: 'c:/',
dir: 'c:/myfile',
base: '文件夹.html',
ext: '.html',
name: '文件夹' }
*/ //relative(a,b)返回a对于b的相对路径 *************重要
let j=path.relative('C:/myfile/文件夹/1.html','C:/myfile/文件夹1/2.html');
console.log(j);// ..\..\文件夹1\2.html //resolve()将字符串片段拼接成一个绝对文件 ************重要
let k1=path.resolve('my1','my2');
console.log(k1)//C:\Users\adimn\Desktop\es6\my1\my2
let k2=path.resolve();
console.log(k2);//C:\Users\adimn\Desktop\es6
let k3=path.resolve('A/B','../C/D');
console.log(k3);// C:\Users\adimn\Desktop\es6\A\C\D
let k4=path.resolve('/A/C');
console.log(k4);// C:\A\C //sep提供路径分隔符
let l1='A\\B\\C\\D'.split(path.sep); //window下必须这样写 双反斜杠
console.log(l1); //[ 'A', 'B', 'C', 'D' ]

关于node的path模块的更多相关文章

  1. node之path模块

    node之path模块 原文链接 //引用该模块 var path = require("path"); 1.路径解析,得到规范化的路径格式 对window系统,目录分隔为'', ...

  2. Node.js Path 模块

    Node.js path 模块提供了一些用于处理文件路径的小工具,我们可以通过以下方式引入该模块: var path = require("path") 方法 序号 方法 & ...

  3. [Node.js]Path模块

    摘要 path模块提供了一些处理文件路径问题的工具. path模块 引入模块 var path=require("path"); 方法 1 path.normalize(p)规范化 ...

  4. Node入门教程(8)第六章:path 模块详解

    path 模块详解 path 模块提供了一些工具函数,用于处理文件与目录的路径.由于windows和其他系统之间路径不统一,path模块还专门做了相关处理,屏蔽了彼此之间的差异. 可移植操作系统接口( ...

  5. 37.Node.js工具模块---处理和转换文件路径的工具 Path模块

    转自:http://www.runoob.com/nodejs/nodejs-module-system.html Node.js path 模块提供了一些用于处理文件路径的小工具,我们可以通过以下方 ...

  6. node(03)--利用 HTTP 模块 URl 模块 PATH 模块 FS 模块创建一个 WEB 服务器

    Web 服务器一般指网站服务器,是指驻留于因特网上某种类型计算机的程序,可以向浏览器等 Web 客户端提供文档,也可以放置网站文件,让全世界浏览:可以放置数据文件,让全世界下载.目前最主流的三个 We ...

  7. node.js入门学习(一)环境安装,REPL,fs模块,path模块,http模块

    一.node.js介绍 1.1.node.js是什么 官网首页总结:Node.js® 是一个基于 Chrome V8 引擎 的 JavaScript 运行时. 1)node.js是一个开发平台,就像j ...

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

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

  9. node path模块

    一.在nodejs中path模块时使用频率很高的模块,其中不乏有很多API写得很模糊,但仔细琢磨下来,也不是很难理解. 1.获取文件所在路径 var path = require('path'); v ...

随机推荐

  1. 问题分析 - 电容的ESR

    ESR,是Equivalent Series Resistance三个单词的缩写,翻译过来就是“等效串连电阻” 理论上,一个完美的电容,自身不会产生任何能量损失,但是实际上,因为制造电容的材料有电阻, ...

  2. [DeeplearningAI笔记]序列模型3.2有条件的语言模型与贪心搜索的不可行性

    5.3序列模型与注意力机制 觉得有用的话,欢迎一起讨论相互学习~Follow Me 3.2选择最可能的句子 Picking the most likely sentence condition lan ...

  3. SpringCloud学习(4)——Ribbon负载均衡

    Ribbon概述 SpringCloud Ribbon是基于Netflix Ribbon实现的一套客户端负载均衡工具. 简单的说, Ribbon是Netflix发布的开源项目, 主要功能是提供客户端软 ...

  4. c# 计算星座

    public string xz(DateTime birthday) { float birthdayF = 0.00F; if (birthday.Month == 1 && bi ...

  5. NOIP模拟赛8

    今天又爆零啦... T1 题目描述 #define goodcatdog gcd #define important i #define judge  j 神说 每个梦想就是一轮月亮,高高地孤寂地挂在 ...

  6. 树的性质和dfs的性质 Codeforces Round #403 (Div. 2, based on Technocup 2017 Finals) E

    http://codeforces.com/contest/782/problem/E 题目大意: 有n个节点,m条边,k个人,k个人中每个人都可以从任意起点开始走(2*n)/k步,且这个步数是向上取 ...

  7. web开发之Servlet 二

    在上一篇文章中,我们演示也证明了Servlet 是一种动态web资源开发的技术,即我可以在浏览器中输入URL,然后就可以在浏览器中看到我们编写的Servlet资源. 那当我们在浏览器上一起一个HTTP ...

  8. jQuery网格插件 ParamQuery

    ParamQuery是一种轻量级的jQuery网格插件,基于用于用户界面控制.具有一致API的优秀设计模式jQueryUI Widget factory创建,能够在网页上展示各种类似于Excel和Go ...

  9. 【Atcoer】ARC088 E - Papple Sort

    [题目]E - Papple Sort [题意]给定长度为n的小写字母串,只能交换相邻字母,求形成回文串的最小步数.n<=2*10^5. [算法]数学 [题解]官方题解 本题题解中有以下重要的思 ...

  10. 【leetcode 简单】第四十八题 旋转数组

    给定一个数组,将数组中的元素向右移动 k 个位置,其中 k 是非负数. 示例 1: 输入: [1,2,3,4,5,6,7] 和 k = 3 输出: [5,6,7,1,2,3,4] 解释: 向右旋转 1 ...