- path.dirname(agr)
const path=require('path');
path.dirname('dist/js/a.js');
//返回 dist/js,当dirname的参数agr为文件时候,返回改文件的目录
path.dirname(path.resolve('a','b','d/e'));
//返回D:\demos\a\b\d 绝对路径参数时候,返回上层目录
path.dirname('a/b/c')
//返回 a/b 参数为相对路径时,返回上层目录
//path.dirname用于路径,其中参数为字符串,其为文件时,返回文件所在目录;其为目录时,返回上层目录
- path.resolve(arg1,arg2,….)
const path=require('path');
path.resolve('a','b','c/d');
//返回D:\a\b\c\d ,path.resolve返回当前环境所在路径拼接参数字符串所得到的绝对路径,其中参数可以有多个
- path.relative(argS,argE)
const path=require('path');
path.relative('a/b/c','a/d/e');
//返回 ..\..\d\e ,
path.relative('D:/A/B/C','B/D/E');
//返回 ..\D\E ,
path.relative('C:/A/B/C','D:/A/D/E');
//返回 D:\A\D\E ,
//path.relative(argS,argE)方法用于获取从argS进入argE的相对路径,当两个参数都为绝对路径,且不同盘时,返回参数areE
- path.join(arg1,arg2,arg3…)
const path=require('path');
path.join('a','b');
//返回 a\b
path.join(__dirname,'c','main.js')
//返回 D:\c\main.js ,__dirname表示当前运行环境绝对路径
//path.join()方法拼接路径,并返回该路径,结合__dirname可以达到path.resolve()方法同样的效果
- path.normalize(arg)
path.normalize('./a/./b')
//返回 a\b ---规则1:路径转换会把./去掉
path.normalize('a/b/../c/d/..')
//返回 a\c ---规则2:转换路径遇到 ../ ,则会去除本身与父目录
path.normalize('ab/d///')
//返回 a\b\d ---规则3:多个连着斜杠会被解析为单斜杠,若单斜杠结尾,则保留
//path.normalize()方法接收一个参数,即为被解析的路径字符串,将其转换为标准路径,标准路径转换规则如上所示。
- paht.basename(arg1,arg2)
const path=require('path');
path.basename('a/b/a.min.js');
//返回a.min.js,当参数arg2为空时,返回参数arg1中全文件名
path.basename('a/b/main');
//返回main,当参数arg2为空时,且arg1位路径时,返回参数arg1中最底层路径
path.basename('a.js.map','map')
//返回a.js ,匹配参数arg2的扩展名,去除并返回文件名
path.basename('a.js.map','.js')
//返回a.js.map ,匹配参数arg2的扩展名,如果匹配不到该扩展名,则直接返回全文件名
//path.basename()方法就是返回路径中文件名字而已,arg2增加了一步匹配并去除扩展名
- path.extname(arg)
path.extname('a.js')
//返回扩展名.js(注意,有点.)
path.extname('a.js.map')
//返回扩展名.map
path.extname()
//报错
path.extname('a')
//报错
//path.extname()方法,有一个必须参数,其必须带有扩展名,否则报错,正常,则返回所传参数扩展名
- path模块其他属性/方法
path.sep //返回操作系统中文件分隔符; window是'\\', Unix是'/'
path.delimiter //返回操作系统中目录分隔符,如window是';', Unix中是':'
path.isAbsolute(path) //检测path是否为绝对路径。一个绝对路径会解析到相同的位置,无论是不是在工作目录。
path.parse(pathString) //返回路径字符串的对象。
path.format(pathObject) //从对象中返回路径字符串,和 path.parse 相反。