path模块api整理
const path = require('path'); //basename [Fun] 返回文件名称 会根据平台返回不同值 path.basename('C:\\temp\\myfile.html') //Linux 返回: 'C:\\temp\\myfile.html' //POSIX 返回: 'myfile.html' //win32.basename [Fun] 返回文件名称 path.win32.basename('C:\\temp\\myfile.html'); // 双平台上都返回windiws解析结果 //basename [Fun] 返回文件名称 path.posix.basename('C:\\temp\\myfile.html'); // 双平台上都返回posix解析结果 //dirname [Fun] 方法返回一个 path 的目录名 path.dirname('/foo/bar/div/path/d.mp3'); //返回 foo/bar/div/path/ //extname [Fun] 方法path的拓展名 非字符串则抛出TypeError path.extname('name/s.mp3'); //format [Fun] 方法会从一个对象返回一个路径字符串。 //dir <string> root <string> base <string> name <string> ext <string> //(1) 如果提供了 pathObject.dir,则 pathObject.root 会被忽略 //(2) 如果提供了 pathObject.base 存在,则 pathObject.ext 和 pathObject.name 会被忽略 path.format({root: '/',name:'file',ext:'.txt'}); //isAbsolute [Fun] 方法会判定path是否为一个绝对路径 path.isAbsolute('/foo/bar'); //join 方法使用平台特定的分隔符把全部给定的 path 片段连接到一起,并规范化生成的路径 path.join('/foo', '/bar', 'baz/asdf', 'quux', '..'); // \foo\bar\baz\asdf //normalize [Fun] 方法会规范化给定的 path,并解析 '..' 和 '.' 片段 path.normalize('C:\\temp\\\\foo\\bar\\..\\') //? //c:\temp\fool\ //win32.normalize [Fun] 尽管Windows会识别多种文件路径分隔符,但是两种分隔符在Window上会被(\)分隔符取代 path.win32.normalize('C:////temp\\\\/\\/\\/foo/bar') //? //c:\temp\foo\bar //parse [Fun] 方法返回一个对象,对象的属性表示 path 的元素。 尾部文件分隔符会被忽略, path.parse('/home/user/dir/file.txt'); //? //返回: { root: '/', dir: '/home/user/dir',base:'file.txt',ext: '.txt',name: 'file' } //relative(from, to) [Fun] 方法返回从 from 到 to 的相对路径(基于当前工作目录), 如果 from 和 to 各自解析到同一路径(调用 path.resolve()),则返回一个长度为零的字符串 path.relative('/data/orandea/test/aaa', '/data/orandea/impl/bbb'); //返回 windows ..\..\impl\bbb //返回 POSIX ../../impl/bbb //resolve [Fun] 方法会把一个路径或路径片段的序列解析为一个绝对路径 ,如果无参数返回当前工作目录绝对路径 path.resolve('wwwroot', 'static_files/png/', '../gif/image.gif'); //返回 c:\Users\张智博\Desktop\nodeDemo\wwwroot\static_files\gif\image.gif //sep [Constant] 提供了平台特定的路径片段分隔符: //Windows 上是 \ //POSIX 上是 / 'foo/bar/baz'.split(path.sep); // 返回: ['foo', 'bar', 'baz'] //delimiter [Constant] 提供平台特定的路径分隔符: Windows 上是 ; POSIX 上是 : path.delimiter //win32 属性提供了 path 方法针对 Windows 的实现。 path.win32 //posix [Fun ] 属性提供了 path 方法针对 POSIX 的实现。 path.posix