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}')

【笔记】node常用方法(持续更新)的更多相关文章

  1. jQuery常用方法(持续更新) jQuery(转)

    0.常用代码: 请容许我在1之前插入一个0,我觉得我有必要把最常用的代码放在第一位,毕竟大部分时间大家都是找代码的. (1)AJAX请求 $(function() { $('#send').click ...

  2. NXP LPC系列学习笔记汇总(持续更新中)

    1. LPC11E68循环冗余校验CRC学习笔记 文章主要介绍了如何使用LPC11E68的CRC外设功能,并介绍了与CRC引擎相关的寄存器,然后以生成CRC-CCITT多项式校验为例进行了介绍. 2. ...

  3. Android周笔记(9.8-14)(持续更新)

    本笔记记录一周内的小知识点和一些心学习的Demo. 1.PopupWindow: new 一个activity_pop_window:id为popwindow的Button,id为hello123的T ...

  4. R笔记整理(持续更新中)

    1. 安装R包 install.packages("ggplot2") #注意留意在包的名称外有引号!!! library(ggplot2) #在加载包的时候,则不需要在包的名称外 ...

  5. C++ 编程技巧笔记记录(持续更新)

    C++是博大精深的语言,特性复杂得跟北京二环一样,继承乱得跟乱伦似的. 不过它仍然是我最熟悉且必须用在游戏开发上的语言,这篇文章用于挑选出一些个人觉得重要的条款/经验/技巧进行记录总结. 文章最后列出 ...

  6. workbench使用小笔记(不定期持续更新)

    1. 删除不使用的工作空间 在使用workbench时,之前可能建了好几个工作空间,现在有一些不使用了,每次打开都能还能看到它们,对于强迫症来说多少有一些不爽.如下图: 现在,就把那些不使用的工作空间 ...

  7. 【MAC】常用方法-持续更新

    1.Homebrew安装 删除brew ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/ma ...

  8. 虚拟机centos笔记整理,持续更新~~

    远程拷贝文件:scp -r 文件名 主机名:完整路径名(冒号不能少)拷贝当前windows系统的文件到当前目录:rz -y 查找文件:updatedb 修改数据库locate 文件名 即可查找文件

  9. jQuery常用方法(持续更新)(转)

    0.常用代码: 请容许我在1之前插入一个0,我觉得我有必要把最常用的代码放在第一位,毕竟大部分时间大家都是找代码的. (1)AJAX请求 $(function() { $('#send').click ...

  10. markdown常用语法使用笔记+使用技巧(持续更新......)

    参考引用内容: 简书教程 一 基本语法 1. 标题 语法: 在想要设置为标题的文字前面加#来表示,一个#是一级标题,二个#是二级标题,以此类推.支持六级标题. 注:标准语法一般在#后跟个空格再写文字 ...

随机推荐

  1. 松灵机器人scout mini小车 自主导航(2)——仿真指南

    松灵机器人Scout mini小车仿真指南 之前介绍了如何通过CAN TO USB串口实现用键盘控制小车移动.但是一直用小车测试缺乏安全性.而松灵官方贴心的为我们准备了gazebo仿真环境,提供了完整 ...

  2. 引入样式在Element UI (Vue 2)和Element Plus (Vue 3)中的不同

    引入样式 Element UI (Vue 2):   import 'element-ui/lib/theme-chalk/index.css'; Element Plus (Vue 3):   im ...

  3. 记一次 redis 事件注册不当导致的内存泄露

    线上的程序跑着跑着内存越来越大,并且没有下降的趋势,重启一下程序也只能短暂恢复.通过 htop 命令再按一下 M 键按内存占用大小排个序,程序会占好几个G.那好,让我们来分析一下. 收集dump 通过 ...

  4. ECMAScript 是什么?

    ECMAScript 是什么 简介 Ecma 标准定义了 ECMAScript 语言 ECMAScript 基于多种原始技术,最著名的是 JavaScript (Netscape) 和 JScript ...

  5. 微软CrowdStrike驱动蓝屏以及内核签名

    原因 当Windows操作系统遇到严重错误导致系统崩溃时,屏幕显示为蓝色,通常伴有错误代码和信息,这被称为"蓝屏死机"(Blue Screen of Death,简称BSOD) h ...

  6. 「图论」Bron-kerbosch算法

    7.21晚上加赛 T2.七负我,做这题找到了性质发现需要求最大团,不会,爆搜,打假了,赛后改,对了,但时间复杂度大爆炸,看下发题解,有这么一句话:于是学习了一下. Bron-kerbosch算法-求图 ...

  7. oauth2协议

    什么是OAUTH2协议: 首先是几个概念问题: 资源:用户信息,在微信中存储 资源拥有者:用户 认证服务:微信负责认证用户的身份,也负责为客户端颁发令牌 客户端:携带令牌请求微信获取用户信息 仍以微信 ...

  8. 错误记录java: JDK isn't specified for module

    跑苍穹外卖的时候遇到了 java: JDK isn't specified for module 'sky-pojo'这一问题 解决办法是通过修改JDK版本,这个项目用的springboot比较早,可 ...

  9. springMvc使用自定义View生成Excel表格

    1:通过自定义的View视图可以让请求直接到一个Excel表去. 2:自定义的视图必须继承  AbstractXlsView /AbstractXlsxView / AbstractXlsxStrea ...

  10. C++命名空间、标准输入输出、引用

    1.简述C++中命名空间的作用. 答:避免重复定义全局变量的问题. 2.定义两个命名空间A 和 B 分别在A中和B中定义变量value.在main函数中将两个空间的value打印出来. #includ ...