node Path模块常用方法总结

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'

拓展学习

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容