Path模块提供了用户处理文件和目录路径方法。
由于操作系统不同,对path方法结果有点影响。
1. path.basename(path[, ext])
- path 字符串
- ext 可选的文件扩展名
- returns: 字符串
该方法返回路径的最后一部分。目录分隔符"/"会被自动忽略。
//For example:
path.basename('/foo/bar/baz/asdf/quux.html');
// Returns: 'quux.html'
path.basename('/foo/bar/baz/asdf/quux.html', '.html');
// Returns: 'quux'
2. path.sep
该属性提供特定平台的路径分隔符
-
\
on Windows -
/
on POSIX
For example on POSIX:
'foo/bar/baz'.split(path.sep);
// Returns: ['foo', 'bar', 'baz']
On Windows:
'foo\\bar\\baz'.split(path.sep);
// Returns: ['foo', 'bar', 'baz']
注意:在Windows上,正斜杠(/)和反斜杠(\)都被接受为路径段分隔符; 但path.sep仅返回反斜杠(\\)。
3. path.resolve([...paths])
- ...paths 一系列路径或路段 eg:
path.resolve(__dirname, 'dist')
- return
path.resolve()方法将一系列路径或路径段解析为绝对路径。
在给定的路径序列中,从右到左进行处理,每个随后的路径都被考虑,直到 一个 绝对路径被构建成。
//example:
> path.resolve('foo','bar','baz')
'/Users/apple/foo/bar/baz'
> path.resolve('foo','/bar','baz')
'/bar/baz'
> path.resolve('/foo','/bar','baz')
'/bar/baz'
> path.resolve('/foo','/bar','/baz')
'/baz'
> path.resolve('/foo','bar','')
'/foo/bar'
> path.resolve('','','')
'/Users/apple'
根据测试结果,只要有一个绝对路径被构成,就返回该绝对路径结果。零长度的参数自动被忽略。无参数直接返回当前路径。
网友评论