const path = require('path')
// require('./static/test/test')
{
/*
总结:
__dirname: 获得当前执行文件所在目录的完整目录名
__filename: 获得当前执行文件的带有完整绝对路径的文件名
process.cwd():获得当前执行node命令时候的文件夹目录名
./: 不使用require时候,./与process.cwd()一样,使用require时候,与__dirname一样
只有在 require() 时才使用相对路径(./, ../) 的写法,其他地方一律使用绝对路径,如下: // 当前目录下
path.dirname(__filename) + '/path.js';
// 相邻目录下
path.resolve(__dirname, '../regx/regx.js');
*/
}
{
//获取路径
console.log('获取路径');
let res = path.dirname('./static/test/test.js') // ./static/test
console.log("res", res)
}
{
//路径拼接
console.log('------------------------------------');
console.log(__dirname); //当前文件的父目录路径 D:\code1\nodeDemo\nodeLearn console.log(path.join(__dirname, '/img/1.png')) // D:\code1\nodeDemo\nodeLearn\img\1.png
console.log(path.join(__dirname, 'img/1.png')) // D:\code1\nodeDemo\nodeLearn\img\1.png
console.log(path.join(__dirname, './img/1.png')) // D:\code1\nodeDemo\nodeLearn\img\1.png
console.log(path.join(__dirname, '../img/1.png')) // D:\code1\nodeDemo\img\1.png console.log('########################################'); console.log(path.resolve(__dirname, '/img/1.png')) // D:\img\1.png
console.log(path.resolve(__dirname, 'img/1.png')) // D:\code1\nodeDemo\nodeLearn\img\1.png
console.log(path.resolve(__dirname, './img/1.png')) // D:\code1\nodeDemo\nodeLearn\img\1.png
console.log(path.resolve(__dirname, '../img/1.png'))// D:\code1\nodeDemo\img\1.png }
{
//获取文件名path.basename(filepath)
let path1 = path.basename('./static/test/test.js') // test.js
let path2 = path.basename('/static/1.txt') // 1.txt
// 第二个参数去掉结果后缀
let path3 = path.basename('./static/test/test.js', '.js') // test 本来是test.js --去掉.js -->test
let path4 = path.basename('./static/test/test.js', '.css') // test.js 去不掉就原样输出
} {
//获取后缀 :path.extname(filepath)
let ext = path.extname('./static/1.txt') //.txt
let ext1 = path.extname('./static/test/test.js') // .js
let ext2 = path.extname('static/test/test.js') // .js
}
{
//提供平台特定的路径片段分隔符: Windows 分隔符上是 \。
let res = './foo/bar/baz'.split(path.sep); //[ './foo/bar/baz' ]
let res1 = 'foo\\bar\\baz'.split(path.sep); //[ 'foo', 'bar', 'baz' ] }

最新文章

  1. 【图文教程】Eclipse for PHP+XAMPP调试配置
  2. JavaScript 回忆录
  3. 使用Nodejs+Protractor搭建测试环境
  4. php 安装memcacheq
  5. 《zw版·Halcon-delphi系列原创教程》 Halcon分类函数·简明中文手册 总览
  6. jQuery 根据JSON数据动态生成表格
  7. C++的最佳特性(译)
  8. sqlserver 2005 分布式架构 对等事务复制 .
  9. HW 研发体系机构的几个术语
  10. Scanner scanner=new Scanner(System.in)
  11. 物联网MQTT协议分析和开源Mosquitto部署验证
  12. 根据Model有值的自动生成添加的Sql语句
  13. MySQL Binlog的介绍
  14. python作用域与命名空间
  15. BSS, DATA, TEXT, HEAP, STACK
  16. 语义分割的简单指南 A Simple Guide to Semantic Segmentation
  17. 6. ZigZag Conversion (字符串的连接)
  18. 树莓派进阶之路 (006) - 树莓派安装wiringPi
  19. leetcode two pointer
  20. 布斯乘法 Mips实现 - Booth Algorithm

热门文章

  1. Typora 完美结合 PicGo,写作体验更佳!
  2. 微信小程序多列选择器
  3. JavaFX桌面应用-MVC模式开发,“真香”
  4. C++ 的字符串反转
  5. C#算法设计排序篇之04-选择排序(附带动画演示程序)
  6. 01从DataGrid中导入到Excel
  7. 同步博客到cnblogs平台
  8. jquery—实现能滚动的选项卡效果
  9. do...while循环语句(水仙花)
  10. Nginx同时支持Http和Https