在REPL中,我有以下代码:
> process.env.MY_VAR=undefined
undefined
> process.env.MY_VAR
'undefined'
如何将环境变量设置为未定义(即无值),而不是字符串“未定义”?
发布于 2018-07-26 05:24:55
在JavaScript中,undefined
意味着事物可以被访问,但具有未定义的值。您可以尝试使用delete
,如下所示:
x = {a:1, b:2, c:3};
delete x.b;
// x is now {a:1, c:3}
但我不确定您是否可以使用env
属性做到这一点,即使您可以做到这一点,请注意,此更改将仅应用于您的作用域。我的意思是,依赖于同一环境变量的其他脚本仍然会有它。这是因为当您在node中运行脚本时,它会创建自己的执行环境,将当前环境复制到自己的作用域中。
发布于 2018-07-26 05:25:49
如果您没有将变量赋值给任何对象,那么它应该返回undefined
。如果将其赋值为undefined
,则隐式类型强制会介入并将其更改为字符串。
如果您试图取消设置现有变量,您可以使用delete process.env.MY_VAR
,然后它将返回undefined
。
https://stackoverflow.com/questions/51527783
复制相似问题