3 path核心模块
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' ] }
3 path核心模块的更多相关文章
- 核心模块Path
核心模块Path 作用:用于帮助程序员来操作硬盘上的路径. 核心模块注意点:当引用核心模块的时候直接require('模块名'),不需要加任何路径或者后缀. Path中的常用API: dirname( ...
- Nodejs核心模块
(1)全局对象 在浏览器JS中,通常window是全局对象,而nodejs中的全局对象是global,所有全局变量都是global对象的属性. 在nodejs中能够直接访问到的对象通常都是global ...
- node八-核心模块、包
学会查API,远比会几个API更重要. 核心模块意义 -如果只是在服务器运行javascript代码,并没有多大意义,因为无法实现任何功能>读写文件.访问网络 -Node的用处在于它本身还提供可 ...
- node.js中path路径模块的使用
path模块是node.js中处理路径的核心模块.可以很方便的处理关于文件路径的问题. join() 将多个参数值合并成一个路径 const path = require('path'); conso ...
- Hadoop2源码分析-HDFS核心模块分析
1.概述 这篇博客接着<Hadoop2源码分析-RPC机制初识>来讲述,前面我们对MapReduce.序列化.RPC进行了分析和探索,对Hadoop V2的这些模块都有了大致的了解,通过对 ...
- [转]ASP.NET 核心模块配置参考
本文转自:https://docs.microsoft.com/zh-cn/aspnet/core/host-and-deploy/aspnet-core-module?view=aspnetcore ...
- 高性能Web服务器Nginx的配置与部署研究(7)核心模块之主模块的非测试常用指令
1. error_log 含义:指定存储错误日志的文件 语法:error_log <file> [debug|info|notice|warn|error|crit] 缺省:${prefi ...
- Linux学习-核心与核心模块
谈完了整个开机的流程,您应该会知道,在整个开机的过程当中,是否能够成功的驱动我们主机的硬 件配备, 是核心 (kernel) 的工作!而核心一般都是压缩文件,因此在使用核心之前,就得要将他解 压缩后, ...
- 12-《Node.js开发指南》-核心模块
全局对象 Node.js中的全局对象是global 所有全局变量(除了global本身以外)都是global对象的属性 最根本的作用为全局变量的宿主 全局变量 //满足以下条件的是全局变量 a.在最外 ...
随机推荐
- 001_centos7配置网络动态获取IP地址
笔者今天刚装完centos7的虚拟机,发现无法获取IP地址,经过网上查询资料,发现centos7是默认没有网络配置的,需要手工配置. 而centos7与centos6不同,没有了config命令,所以 ...
- “随手记”开发记录day19
将软件推荐给父母,先尝试使用软件,观察bug,若有啥不足的,才能及时修改.
- JS 节点笔记
h5新增自定义属性 为了保存并使用数据,有一些数据不必要保存到数据库中: data开头作为自定义属性并赋值 兼容性获取element.getAttribute("da ...
- SpringBoot_MyBatisPlus快速入门小例子
快速入门 创建一个表 我这里随便创建了一个air空气表 idea连接Mysql数据库 点击右侧database再点击添加数据库 找到Mysql 添加用户名,密码,数据库最后点击测试 测试成功后在右侧就 ...
- CSS3 新添选择器
目录 属性选择器 结构伪类选择器 伪元素选择器 属性选择器 属性选择器可以元素特定属性来进行选择,这样就可以不借助于类选择器或id选择器 选择符 简述 E[att] 选择具有att属性的E元素 E[a ...
- 关于java中jdk的环境变量配置
关于java中jdk的环境变量配置 烦死人,在网上找了很长时间.最终找到了一个方法!现在将其总结帮助后来人. 方法/步骤 1 下载好jdk,并按照提示一步步安装,最后记下jdk所在的安装位置,这里 ...
- java jsp实现网络考试系统(mysql)
java网络考试系统 功能:可进行学生.管理员登录,学生考试.管理员出卷.列表分页 @ 目录 java网络考试系统 实现效果 主要代码实现 写在最后 实现效果 主要代码实现 package cn.it ...
- add application window with unknown token XXX Unable to add window;is your activity is running?
报错: Attempted to add application window with unknown token XXX Unable to add window——token android.o ...
- 自建本地服务器,自建Web服务器——保姆级教程!
搭建本地服务器,Web服务器--保姆级教程! 本文首发于https://blog.chens.life/How-to-build-your-own-server.html. 先上图!大致思路就是如此. ...
- 聊一聊mycat数据库集群系列之双主双重实现
最近在梳理数据库集群的相关操作,现在花点时间整理一下关于mysql数据库集群的操作总结,恰好你又在看这一块,供一份参考.本次系列终结大概包括以下内容:多数据库安装.mycat部署安装.数据库之读写分离 ...