# Node.js Path 模块
Node.js path 模块提供了一些用于处理文件路径的小工具,我们可以通过以下方式引入该模块:
```
var path = require("path")
```
### 方法
| 方法 | 描述 |
| --- | --- |
| **path.normalize(p)** | 规范化路径,注意'..' 和 '.'。 |
| **path.join([path1][, path2][, ...])** | 用于连接路径。该方法的主要用途在于,会正确使用当前系统的路径分隔符,Unix系统是"/",Windows系统是"\"。 |
| **path.resolve([from ...], to)** | 将 **to** 参数解析为绝对路径。 |
| **path.isAbsolute(path)** | 判断参数 **path** 是否是绝对路径。 |
| **path.relative(from, to)** | 用于将相对路径转为绝对路径。 |
| **path.dirname(p)** | 返回路径中代表文件夹的部分,同 Unix 的dirname 命令类似。 |
| **path.basename(p[, ext])** | 返回路径中的最后一部分。同 Unix 命令 bashname 类似。 |
| **path.extname(p)** | 返回路径中文件的后缀名,即路径中最后一个'.'之后的部分。如果一个路径中并不包含'.'或该路径只包含一个'.' 且这个'.'为路径的第一个字符,则此命令返回空字符串。 |
| **path.parse(pathString)** | 返回路径字符串的对象。 |
| **path.format(pathObject)** | 从对象中返回路径字符串,和 path.parse 相反。 |
### 属性
| 属性 | 描述 |
| --- | --- |
| **path.sep** | 平台的文件路径分隔符,'\\' 或 '/'。 |
| **path.delimiter** | 平台的分隔符, ; or ':'. |
| **path.posix** | 提供上述 path 的方法,不过总是以 posix 兼容的方式交互。 |
| **path.win32** | 提供上述 path 的方法,不过总是以 win32 兼容的方式交互。 |
### 实例
创建 main.js 文件,代码如下所示:
```
var path = require("path");
// 格式化路径
console.log('normalization : ' + path.normalize('/test/test1//2slashes/1slash/tab/..'));
// 连接路径
console.log('joint path : ' + path.join('/test', 'test1', '2slashes/1slash', 'tab', '..'));
// 转换为绝对路径
console.log('resolve : ' + path.resolve('main.js'));
// 路径中文件的后缀名
console.log('ext name : ' + path.extname('main.js'));
```
代码执行结果如下:
```
$ node main.js
normalization : /test/test1/2slashes/1slash
joint path : /test/test1/2slashes/1slash
resolve : /web/com/1427176256_27423/main.js
ext name : .js
```
- Node.js 简介
- Node.js 安装配置
- Node.js 创建第一个应用
- NPM 使用介绍
- Node.js REPL(交互式解释器)
- Node.js 回调函数
- Node.js 事件循环
- Node.js EventEmitter
- Node.js Buffer(缓冲区)
- Node.js Stream(流)
- Node.js模块系统
- Node.js 函数
- Node.js 路由
- Node.js 全局对象
- Node.js 常用工具 util
- Node.js 文件系统
- Node.js GET/POST请求
- Node.js 工具模块
- Node.js OS 模块
- Node.js Path 模块
- Node.js Net 模块
- Node.js DNS 模块
- Node.js Domain 模块
- Node.js Web 模块
- Node.js Express 框架
- Node.js RESTful API
- Node.js 多进程
- Node.js JXcore 打包
- 免责声明