Node.js 是一个基于 Chrome V8 引擎的 JavaScript 运行环境,它允许在服务器端执行 JavaScript 代码。Node.js 提供了很多内置模块,这些模块提供了一系列常用的功能,以便开发者可以轻松地构建服务器、处理文件、创建网络连接等。以下是一些 Node.js 的常用内置模块:
- HTTP 模块 (
http): 用于创建 HTTP 服务器和客户端。通过这个模块,可以接收 HTTP 请求和发送 HTTP 响应。 - HTTPS 模块 (
https): 与 HTTP 模块类似,但是提供了 SSL 加密的功能,用于创建安全的 HTTPS 服务器和客户端。 - FS 模块 (
fs): 用于文件系统的操作,如读取文件、写入文件、监听文件变化等。 - PATH 模块 (
path): 用于处理文件路径,提供了一系列用于路径解析和处理的实用工具。 - OS 模块 (
os): 提供了与操作系统相关的实用工具和信息,如系统内存使用情况、CPU 信息、操作系统类型等。 - URL 模块 (
url): 用于解析和格式化 URL 字符串。 - QUERY STRING 模块 (
querystring): 用于解析和格式化 URL 查询字符串。 - EVENTS 模块 (
events): 提供了事件发射器(EventEmitter)类,用于处理和触发事件。 - TIMERS 模块 (
timers): 提供了定时器功能,包括延迟执行(setTimeout)和周期性执行(setInterval)。 - STREAMS 模块 (
stream): 提供了流(Stream)的实现,用于处理流式数据,包括可读流(Readable)、可写流(Writable)、双向流(Duplex)和转换流(Transform)。 - UTIL 模块 (
util): 提供了一系列实用的工具函数,如类型判断、对象序列化等。 - DNS 模块 (
dns): 用于解析域名。 - NET 模块 (
net): 用于创建基于流的 TCP 或 IPC 服务器和客户端。 - CRYPTO 模块 (
crypto): 提供了加密功能的支持,包括哈希(hashing)、HMAC、加密(encryption)、解密(decryption)、签名(signing)和验证(verification)。 - ZLIB 模块 (
zlib): 提供了数据压缩和解压缩的功能。 - ASSERT 模块 (
assert): 用于编写断言,可以在开发过程中帮助捕获错误和不符合预期的条件。
这些模块是 Node.js 核心的一部分,不需要额外安装,可以直接在 Node.js 应用程序中使用。通过这些模块,Node.js 能够处理各种服务器端任务,使得 JavaScript 成为一种全栈开发语言。