如何在Node.js中将环境变量设置为undefined?

时间:2018-07-25 21:16:35

标签: node.js

在REPL中,我有以下代码:

> process.env.MY_VAR=undefined
undefined
> process.env.MY_VAR
'undefined'

如何将环境变量设置为未定义(即没有值),而不是字符串“ undefined”?

2 个答案:

答案 0 :(得分:1)

在JavaScript中,undefined表示可以访问事物,但具有未定义的值。 您可以尝试使用delete,例如:

x = {a:1, b:2, c:3};
delete x.b;
// x is now {a:1, c:3}

但是我不确定您可以使用env属性来做到这一点,即使可以,也请注意,此更改将仅应用于您的范围。我的意思是,依赖于相同环境变量的其他脚本仍将拥有它。 这是因为当您在节点中运行脚本时,它会创建自己的环境来执行,并将当前的env复制到自己的作用域中。

答案 1 :(得分:0)

如果尚未将变量分配给任何变量,则应返回undefined。如果您将其分配为undefined,则隐式类型强制将介入并将其更改为字符串。

如果您要取消设置现有变量,则可以使用delete process.env.MY_VAR,然后它将返回undefined