承接上文,继续补充学习Nodejs的内置模块
path
path模块
因为Node.js是可以运行不同操作系统上的,不同操作系统的路径分隔符也是不一样的,还有它们之间的根路径同样也是不一样的,所以就需要一个对系统路径,Node.js的Path模块就是提供了一些用于处理文件路径的工具模块。在使用前需要引入模块:
const path = require("path");
属性
- sep:当前系统的路径分隔符,在
Windows系统中,标准分隔符是\,在UNIX系统中,标准分隔符是/; - delimiter:当前系统的环境变量分割符,在
Windows系统中,标准分隔符是;,在UNIX系统中,标准分隔符是:;
方法
- basename(path[, ext]):返回路径的最后一部分,如果传入拓展名参数
ext,那么的路径中不会包含拓展名; - dirname(path):返回路径中代表文件夹的部分;
- extname(path):返回路径中文件的后缀名;
- parse(pathString):返回路径字符串的对象;
- format(pathObject):从对象中返回路径字符串,跟parse相反;
- isAbsolute(path):判断参数path是否是绝对路径;
- join([...paths]):用于连接路径,该方法的主要用途是在于正确使用当前系统的路径分隔符;
- normalize(path):用于规范给定路径,解析
..和.; - relative(from, to):将绝对路径转化为相对路径,返回从
from到to的相对路径; - resolve([...paths]):将参数中的path等一系列路径解析为绝对路径。
let p = '/foo/bar/baz/asdf/test.html';
console.log(path.basename(p)); // test.html
console.log(path.basename(p, '.html')); // test
console.log(path.extname(p)); // .html
let p = 'D:\\Note\\test.html';
console.log(path.parse(p));
/**
{
root: 'D:\\', // 根路径
dir: 'D:\\Note\\test.html', // 目录
base: 'test.html', // 文件
ext: '.html', // 后缀名
name: 'test' // 文件名
}
*/
let pathObj = {
root: 'D:\\', // 根路径
dir: 'D:\\Note\\test.html', // 目录
base: 'test.html', // 文件
ext: '.html', // 后缀名
name: 'test' // 文件名
};
console.log(path.format(pathObj)); //D:\\Note\\test.html