process 对象是一个全局变量,它提供有关当前 Node.js 进程的信息并对其进行控制。 作为一个全局变量,它始终可供 Node.js 应用程序使用,无需使用 require()。 它也可以使用 require() 显式地访问:
const process = require('process');
process.env
process.env 属性返回包含用户环境的对象。
此对象的示例如下所示:
{
TERM: 'xterm-256color',
SHELL: '/usr/local/bin/bash',
USER: 'maciej',
PATH: '~/.bin/:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin',
PWD: '/Users/maciej',
EDITOR: 'vim',
SHLVL: '1',
HOME: '/Users/maciej',
LOGNAME: 'maciej',
_: '/usr/local/bin/node'
}
可以修改此对象,但这些修改不会反映到 Node.js 进程之外,或者(除非明确请求)反映到其他 Worker
线程。 换句话说,以下示例不起作用:
$ node -e 'process.env.foo = "bar"' && echo $foo
以下示例则起作用:
process.env.foo = 'bar';
console.log(process.env.foo);
使用 delete 可以从 process.env 中删除属性。
process.env.TEST = 1;
delete process.env.TEST;