Node.js 全局对象是 Node.js 环境中内置的对象,它为所有模块和脚本提供了基本功能和全局变量。理解全局对象是构建健壮且可维护的 Node.js 应用程序的关键。
全局对象属性
console
- 提供用于输出消息(log、info、error 等)的控制台功能。
process
- 代表当前正在运行的 Node.js 进程的信息,包括其 PID、argv 等。
global
- 一个引用当前全局作用域的特殊对象,允许访问全局变量。
Buffer
- 用于处理二进制数据,提供了一个可变长度的字节数组。
setImmediate
- 计划在当前事件循环的下一轮中执行回调函数。
Timers
- setTimeout、clearTimeout、setInterval、clearInterval:用于设置和清除定时器。
URL
- 用于解析和操作 URL。
OS
- 提供与操作系统交互的方法,例如文件系统、进程管理等。
Path
- 用于处理文件路径,提供路径解析、连接、规范化等功能。
Fs
- 文件系统模块,用于读取、写入、创建和删除文件。
Errors
- 提供了一系列内置错误类,如 Error、TypeError、RangeError 等。
模块
- require:用于导入和加载模块。
- module:代表当前模块的信息。
Streams
- 流表示连续的数据源或目的地,提供一个可读或可写的接口。
- Readable:可读流,用于从数据源读取数据。
- Writable:可写流,用于向数据目的地写入数据。
- Duplex:既可读又可写的流。
HTTP
- http:用于创建 HTTP 服务器和客户端。
- IncomingMessage:表示传入的 HTTP 请求。
- ServerResponse:表示传出的 HTTP 响应。
其他属性
除了这些主要属性外,全局对象还提供了其他有用功能:
- __dirname:当前模块目录的绝对路径。
- __filename:当前模块文件的绝对路径。
- clearInterval:清除由 setInterval 设置的定时器。
- clearTimeout:清除由 setTimeout 设置的定时器。
- global:一个引用当前全局作用域的特殊对象。
- process:代表当前正在运行的 Node.js 进程的信息。
通过理解和利用 Node.js 的全局对象,开发人员可以构建健壮、高效且可维护的应用程序,充分利用 Node.js 平台提供的功能。