NodeJS中的Path对象,用于处理目录的对象,提高开发效率。
用NodeJS的Path命令,与使用Linux下的shell脚本命令相似。
引入path对象
var path = require('path');
比较实用的方法:
格式化路径 path.normalize(p)
特点:将不符合规范的路径格式化,简化开发人员中处理各种复杂的路径判断
示例:
path.normalize('/foo/bar//baz/asdf/quux/..');
// returns
'/foo/bar/baz/asdf'
路径联合 path.join([path1], [path2], [...])
特点:将所有名称用path.seq串联起来,然后用normailze格式化
示例:
path.join('///foo', 'bar', '//baz/asdf', 'quux', '..');
// returns
'/foo/bar/baz/asdf'
路径寻航 path.resolve([from ...], to)
特点:相当于不断的调用系统的cd命令
示例:
path.resolve('foo/bar', '/tmp/file/', '..', 'a/../subfile')
相当于:
cd foo/bar
cd /tmp/file/
cd ..
cd a/../subfile
pwd
相对路径 path.relative(from, to)
特点:返回某个路径下相对于另一个路径的相对位置串,相当于:path.resolve(from, path.relative(from, to)) == path.resolve(to)
示例:
path.relative('C:\\orandea\\test\\aaa', 'C:\\orandea\\impl\\bbb')
// returns
'..\\..\\impl\\bbb'
path.relative('/data/orandea/test/aaa', '/data/orandea/impl/bbb')
// returns
'../../impl/bbb'
文件夹名称 path.dirname(p)
特点:返回路径的所在的文件夹名称
示例:
path.dirname('/foo/bar/baz/asdf/quux')
// returns
'/foo/bar/baz/asdf'
文件名称 path.basename(p, [ext])
特点:返回指定的文件名,返回结果可排除[ext]后缀字符串
示例:
path.basename('/foo/bar/baz/asdf/quux.html')
// returns
'quux.html'
path.basename('/foo/bar/baz/asdf/quux.html', '.html')
// returns
'quux'
扩展名称 path.extname(p)
特点:返回指定文件名的扩展名称
示例:
path.extname('index.html')
// returns
'.html'
path.extname('index.')
// returns
'.'
path.extname('index')
// returns
''
路径分隔符 path.sep
特点:获取文件路径的分隔符,主要是与操作系统相关
示例:
linux:
'foo/bar/baz'.split(path.sep)
// returns
['foo', 'bar', 'baz']
window:
'foo\\bar\\baz'.split(path.sep)
// returns
['foo', 'bar', 'baz']
分享到:
相关推荐
其中,`/path/to/nodejs/bin/`是解压后的Node.js文件夹中的bin目录路径。 6. 验证安装是否成功,可以运行`node -v`和`npm -v`命令,查看Node.js和npm的版本。如果输出正确,说明安装已完成。 要确认安装的Node.js...
除此之外,Node.js还提供了url模块解析URL,util模块提供了一些实用的工具函数,path模块处理文件路径,stream模块实现了流数据处理,使得大文件操作更加高效。 《NodeJS API介绍》部分将详细阐述这些API的使用方法...
- ORM(对象关系映射):可能使用Sequelize或Mongoose等ORM框架,简化数据库操作。 3. **Nginx**: - 反向代理:Nginx通常作为反向代理服务器,用于接收客户端请求,然后将这些请求转发到Node.js应用服务器,提高...
本文将深入探讨如何使用Node.js结合Sequelize这个ORM(对象关系映射)库,来自动化生成DAO(数据访问对象)代码,从而提高开发效率。 Sequelize是Node.js中的一款强大的ORM库,支持PostgreSQL、MySQL、MariaDB、...
通过设置`NODE_PATH`环境变量,可以指定Node.js查找模块的额外路径。 7. **内置模块**: Node.js还提供了一些内置模块,如`fs`用于文件系统操作,`http`用于网络通信,无需`require`,可以直接使用。 这个...
在"Nodejs最新API文档"中,我们可以找到关于Node.js 4.0版本的所有官方API接口及其用法。这个版本是Node.js发展中的一个重要里程碑,引入了许多改进和新特性,旨在提升性能和稳定性。以下是一些关键的知识点: 1. *...
const path = require('path'); function generateDirectoryTree(dir) { return new Promise((resolve, reject) => { fs.readdir(dir, (err, files) => { if (err) { reject(err); } else { const tree = ...
- 了解NodeJS中的全局对象,如`process`和`global`。 3. **第三天:模块系统** - 学习NodeJS的模块系统,包括`require`和`exports`或`module.exports`的使用。 - 探索内置模块,如`fs`(文件系统)、`http`...
NodeJS实战:深入理解与应用 Node.js是一个基于Chrome V8引擎的JavaScript运行环境,它以其事件驱动、非阻塞I/O模型而闻名,尤其适合用于构建高效、可伸缩的网络应用程序。本实战指南旨在帮助开发者从零基础开始,...
表单字段和文件会被分别存储在 `fields` 和 `files` 对象中。这个例子展示了如何接收并处理文件上传,这对于构建支持用户上传文件的应用来说是至关重要的。 继续深入学习 Node.js,你将接触到更多的核心概念,如...
在这个例子中,当客户端发起一个GET请求到`/api/users`时,MockServer将返回一个包含两个用户对象的JSON数组,状态码为200。 除了基本的模拟响应,MockServer还支持更复杂的功能,如延迟响应、录制和回放、以及预期...
3. Node.js 平台:解释Node.js的核心特性,如模块系统、全局对象、异步编程等。 二、Node.js 模块 1. 核心模块:介绍Node.js内置的常用模块,如fs(文件系统)、http(HTTP服务器)、path(路径处理)等。 2. 第三...
安装过程会自动配置环境变量 `NVM_HOME`, `NVM_SYMLINK`,并将其添加到系统 `Path` 变量中。 - **验证**: 打开命令提示符 `cmd`,通过运行 `nvm` 命令来验证是否安装成功。 - **常用命令**: - `nvmlist`: 查看已...
- 核心模块:Node.js自带的模块,如fs、http、path等。 - 文件模块:用户自定义的模块。 - 加载模块:Node.js通过模块系统加载其他模块,包括直接从node_modules目录加载,以及通过require方法按路径加载。 - ...
3. Path 模块:处理文件路径相关操作,如解析、组合、检查路径是否有效等。 三、Node.js 网络编程 1. 创建服务器:通过 http.createServer() 方法创建一个 HTTP 服务器,监听指定端口上的请求。 2. 请求和响应对象...
在API部分,手册详细列出了Node.js的内置模块,如`fs`模块用于文件系统操作,`http`模块用于创建HTTP服务器和客户端,`path`模块提供路径处理功能,`util`模块包含各种实用工具函数,还有`crypto`模块用于加密和哈希...
回调函数有两个参数:`request`对象和`response`对象。 ```javascript const http = require('http'); const server = http.createServer((req, res) => { // 处理请求和响应 }); server.listen(3000); ``` 上述...