process
[TOC]
索引
属性:
- process.argv:
,提供命令行参数数组。 - process.env:
,获取或设置环境变量。 - process.platform:
,用于获取当前操作系统的平台标识符。 - process.stdout:
, - process.stdin:
,
方法:
- process.on():
(event, listener),用于注册事件监听器,以响应 Node.js 进程中的各种事件。 - process.cwd():
(),用于获取当前工作目录的绝对路径。通常用于构造相对于当前工作目录的文件路径。
process
属性
argv
process.argv:,提供命令行参数数组。
返回:
args:
string[],包含命令行参数的数组。第一个元素是node的可执行路径,第二个元素是脚本文件的路径,从第三个元素开始是用户传入的参数。- js
// node example.js arg1 arg2 console.log(process.argv); // Output: [ '/path/to/node', '/path/to/example.js', 'arg1', 'arg2' ]
env
process.env:,获取或设置环境变量。
返回:
env:
object,一个包含所有环境变量的对象。你可以通过该对象访问或修改环境变量。- js
console.log(process.env.PATH); // 获取 PATH 环境变量 process.env.NEW_VAR = 'some value'; // 设置环境变量
platform
process.platform:,用于获取当前操作系统的平台标识符。
返回:
platform:
string,表示操作系统的标识符- 标识符:
win32:Windowslinux:Linuxdarwin:macOS- ...
- js
switch (process.platform) { case 'win32': console.log('Running on Windows'); break; case 'darwin': console.log('Running on macOS'); break; case 'linux': console.log('Running on Linux'); break; default: console.log('Running on an unknown platform'); }
stdout
stdin
方法
on()
process.on():(event, listener),用于注册事件监听器,以响应 Node.js 进程中的各种事件。
event:
string,指定要监听的事件类型,例如'exit'、'uncaughtException'、'SIGINT'等。- 事件类型:
exit:('exit', (code) => void),进程即将退出时触发。beforeExit:('exit', (code) => void),进程退出前触发。uncaughtException:('exit', (err) => void),未捕获的异常发生时触发。SIGINT:('exit', () => void),收到中断信号(通常是 Ctrl+C)时触发。可以用于在进程终止前执行清理操作。SIGTERM:('exit', () => void),收到终止信号时触发。通常用于进程终止时的清理操作。warning:('exit', (warning) => void),发出警告时触发
listener:
(args?) => void,当指定事件发生时执行的回调函数。- args?:``,参数取决于事件类型。
- js
process.on('exit', (code) => { console.log(`Process exiting with code: ${code}`); });
cwd()
process.cwd():(),用于获取当前工作目录的绝对路径。通常用于构造相对于当前工作目录的文件路径。
返回:
currentWorkingDirectory:
string,返回当前工作目录的绝对路径。注意: 返回的是 Node.js 进程的当前工作目录,而不是脚本文件所在的目录。
- js
// 构造相对于当前工作目录的文件路径 const filePath = path.join(process.cwd(), 'data', 'config.json');