快速上手 - path 目录模块 ¶
作者:KK
发表日期:2017.11.10
path模块是一个用于处理目录路径的模块,可直接复制以下代码进行测试:
var path = require('path');
//返回路径中的目录部分
console.log(
path.dirname('D:/ProgramFiles/office')
);
// D:/ProgramFiles
//返回最后一段的文件名或目录名
console.log(
path.basename('D:/ProgramFiles/office')
);
// office
//返回后缀名,前面带.号
console.log(
path.extname('D:/a/b/c.txt'), // .txt
path.extname('b/c/d.js') // .js
);
//规范化路径
console.log(
path.normalize('D:/a/b/../c')
);
// D:/a/c
//返回从from位置到to位置的绝对路径,并且这个路径的目录分隔符是平台的分隔符,比如 windows 是\ ,linux是 /
let from = 'D:/a/b',
to = '../c/d';
console.log( path.resolve(from, to) ); // D:\a\c\d
/*本质上这个命令其实等于不断地执行cd命令然后查看了当前路径:
cd D:/a/b
cd ../c/d
echo %cd% //windows的
pwd //linux的
*/
console.log(
path.resolve(from, '../c/d/e.txt')
);
// D:\a\c\d\e.txt to参数可以指向一个文件
//判断是否绝对路径并且存在
console.log(
path.isAbsolute('a/b.txt'), // false
path.isAbsolute('D:/a/b.txt') // true
);
//将一个字符串路径解析成一个结构化的对象
console.log(
path.parse('D:/a/b')
);
// { root: 'D:/', dir: 'D:/a', base: 'b', ext: '', name: 'b' }
//与parse相反,将结构化的路径对象转化成字符串路径
console.log(
path.format({ root: 'D:/', dir: 'D:/a', base: 'b', ext: '', name: 'b' })
);
// D:/a/b