30. Node.js 开发环境与生产环境的区别

JavaScript017

30. Node.js 开发环境与生产环境的区别,第1张

可以为生产环境和开发环境使用不同的配置。

Node.js 假定其始终运行在开发环境中。 可以通过设置 NODE_ENV=production 环境变量来向 Node.js 发出正在生产环境中运行的信号。

通常通过在 shell 中执行以下命令来完成:

但最好将其放在的 shell 配置文件中(例如,使用 Bash shell 的 .bash_profile),否则当系统重启时,该设置不会被保留。

也可以通过将环境变量放在应用程序的初始化命令之前来应用它:

此环境变量是一个约定,在外部库中也广泛使用。

设置环境为 production 通常可以确保:

You can use conditional statements to execute code in different environments:

For example, in an Express app, you can use this to set different error handlers per environment:

文章来源 node中文官方 http://nodejs.cn/

通过环境变量来区分。

你在 ~/.bashrc 写入

export NODE_ENV="development"

然后在 Node.js 里面读取 NODE_ENV 的值,就知道当前环境了。

一般我们默认的环境是开发环境,

这样你只需要在生产环境的所有机器上设置

export NODE_ENV="production"

javascript中作用域和执行环境不是一个概念

执行环境:执行环境是JS中最重要的一个概念;它定义了变量和函数有权访问的其他数据;

全局执行环境:最外围的一个执行环境,根据ECMAScript实现所在的宿主环境不同而不同,在Web浏览器中,全局执行环境被认为是window对象;

作用域链:当代码在环境中执行时,会创建变量对象的一个作用链;作用域链的作用是保证对执行环境有权访问的所有变量和函数的有序访问;