环境变量不属于 Node.js 的知识范畴,只不过我们在开发 Node.js 应用时经常与环境变量打交道,所以这里简单介绍下。

    环境变量(environment variables)一般是指在操作系统中用来指定操作系统运行环境的一些参数。在 Mac 和 Linux 的终端直接输入 env,会列出当前的环境变量,如:USER=xxx。简单来讲,环境变量就是传递参数给运行程序的。

    在 Node.js 中,我们经常这么用:

    1. NODE_ENV=test node app

    通过以上命令启动程序,指定当前环境变量 NODE_ENV 的值为 test,那么在 app.js 中可通过 process.env 来获取环境变量:

    1. console.log(process.env.NODE_ENV) //test

    另一个常见的例子是使用 debug 模块时:

    1. DEBUG=* node app

    Windows 用户需要首先设置环境变量,然后再执行程序:

    1. set DEBUG=*
    2. set NODE_ENV=test
    3. node app

    或者使用 cross-env

    1. npm i cross-env -g

    使用方式:

    1. cross-env NODE_ENV=test node app