path 模块
path是路径模块,用于处理文件和目录的路径。
调用方法:const path = require('path');
1. 常用方法
-
basename(path ,[ext])
:返回尾缀
basename('/foo/bar/baz/asdf/quux.html'); //quux.html
-
dirname(path)
:返回目录名
basename('/foo/bar/baz/asdf/quux.html'); ///foo/bar/baz/asdf
-
extname(path)
:返回拓展名
basename('/foo/bar/baz/asdf/quux.html'); //html
-
format(pathObject)
:从对象返回路径字符串
根据路径对象(pathObject)生成路径字符串(path)
path.format({
root: '/ignored',
dir: '/home/user/dir',
base: 'file.txt'
});
// 返回: '/home/user/dir/file.txt'
-
isAbsolute(path)
:判断是不是绝对路径
如果给定的 path 是零长度字符串,则返回 false -
join([...paths])
:使用平台特定的分隔符把全部给定的path片段连接到一起,并规范化
path.join('/foo', 'bar', 'baz/asdf', 'quux', '..');
// 返回: '/foo/bar/baz/asdf'
path.join('foo', {}, 'bar');
// 抛出 'TypeError: Path must be a string. Received {}'
-
normalize(path)
:规范化给定的path,并解析 '..' 和 '.'
path.normalize('/foo/bar//baz/asdf/quux/..');
// 返回: '/foo/bar/baz/asdf'
-
parse(path)
:解析path为路径对象(pathObject)
返回的对象将具有以下属性:- dir <string>
- root <string>
- base <string>
- name <string>
- ext <string>
path.parse('/home/user/dir/file.txt');
// 返回:
// { root: '/',
// dir: '/home/user/dir',
// base: 'file.txt',
// ext: '.txt',
// name: 'file' }
┌─────────────────────┬────────────┐
│ dir │ base │
├──────┬ ├──────┬─────┤
│ root │ │ name │ ext │
" / home/user/dir / file .txt "
└──────┴──────────────┴──────┴─────┘
("" 行中的所有空格都应该被忽略,它们纯粹是为了格式化)
-
relative(from, to)
:返回从from到to的相对路径
path.relative('/data/orandea/test/aaa', '/data/orandea/impl/bbb');
// 返回: '../../impl/bbb'
-
resolve([...paths])
:将路径或路径片段的序列解析为一个绝对路径
path.resolve('/foo/bar', './baz');
// 返回: '/foo/bar/baz'
path.resolve('/foo/bar', '/tmp/file/');
// 返回: '/tmp/file'
path.resolve('wwwroot', 'static_files/png/', '../gif/image.gif');
// 如果当前工作目录是 /home/myself/node,
// 则返回 '/home/myself/node/wwwroot/static_files/gif/image.gif'
网友评论