1.path.basename(path[, ext])
path<string>ext<string> 可选的文件扩展名。- 返回: <string>
path.basename() 方法会返回 path 的最后一部分,类似于 Unix 的 basename 命令。 尾部的目录分隔符会被忽略,参见 path.sep。
path.basename('/目录1/目录2/文件.html');
// 返回: '文件.html'
path.basename('/目录1/目录2/文件.html', '.html');
// 返回: '文件'
尽管 Windows 通常以不区分大小写的方式处理文件名(包括文件扩展名),但是此函数不会这样。 例如, C:\文件.html 和 C:\文件.HTML 指向相同的文件,但是 basename 会将扩展名视为区分大小写的字符串:
path.win32.basename('C:\文件.html', '.html');
// 返回: '文件'
path.win32.basename('C:\文件.HTML', '.html');
// 返回: '文件.HTML'
如果
path不是字符串、或给定了ext但不是字符串,则抛出TypeError。
2.path.extname(path)
path.extname() 方法会返回 path 的扩展名,即 path 的最后一部分中从最后一次出现 .(句点)字符直到字符串结束。 如果在 path 的最后一部分中没有 .,或者如果 path 的基本名称(参见 path.basename())除了第一个字符以外没有 .,则返回空字符串。
path.extname('index.html');
// 返回: '.html'
path.extname('index.coffee.md');
// 返回: '.md'
path.extname('index.');
// 返回: '.'
path.extname('index');
// 返回: ''
path.extname('.index');
// 返回: ''
path.extname('.index.md');
// 返回: '.md'
如果 path 不是字符串,则抛出 TypeError。
3.path.sep
提供平台特定的路径片段分隔符:
- Windows 上是
。 - POSIX 上是
/。
在 Windows 上:
'foo\bar\baz'.split(path.sep); // 返回: ['foo', 'bar', 'baz']
在 Windows 上,正斜杠(/)和反斜杠()都被接受为路径片段分隔符。 但是, path 方法只添加反斜杠()。
4.glob.sync
nodejs中使用glob.sync()读取本地文件,如下示例:
const glob = require('glob')
var imgarr = glob.sync('./**/*.tif')
console.log('当前的imageArr:', imgarr)
同时读取本地中的.tif .png .jpg文件?
glob.sync('./**/*.{tif,png,jpg}')