Appearance
path模块
用于处理路径模块
要使用path模块需要先导入
javascript
const path = require('path');
方法 | 解释 |
---|---|
join | 拼接多个路径片段 |
basename | 获取路径中最后一部分 |
extname | 获取扩展名 |
resolve | 拼接规范的绝对路径 |
sep | 获取操作系统的路径分隔符 |
parse | 解析路径并返回对象 |
dirname | 获取路径的目录名 |
javascript
// 拼接路径
const pathLink = path.join('/a/b','../','/c','/d');
console.log(pathLink); // 输出\a\c\d,../会替换掉前一个路径
// 获取最后的文件名
const fileName = path.basename('./folder/index.html');
console.log(fileName) // 返回index.html
// 获取最后的文件名
const ext = path.extname('./folder/index.html');
console.log(fileName) // 返回.html
使用相对路径时,其执行的参照路径实际上是当前执行路径,而非代码文件所在路径
为了解决这种因为执行路径不同导致相对路径不同引发的问题,建议使用__dirname作为起始路径的替代
__dirname指代的是当前文件所在的目录
js
const fs = require('fs');
// resolve
console.log(path.resolve(__dirname, 'file.txt'));
// sep 分隔符
console.log(path.sep); // 返回该系统的路径分割符
// parse 解析路径
let str = 'D:\\Code\\files.txt';
// console.log(__filename); // __filename,获取文件的绝对路径
console.log(path.parse(str)); // 返回路径对象
// basename
console.log(path.basename(str)); // 返回文件名(包含扩展名)
// dirname
console.log(path.dirname(str)); // 获取路径名(文件名前面那部分)
// extname
console.log(path.extname(str)); // 获取文件的扩展名
不要使用斜杠作为路径开头,此时路径会变为绝对路径,起始位置不正确,会导致无法拼接