如何仅使用字符串访问常数变量



我有以下问题:

const value1 = "some value";
var   value2 = "some value";
console.log(window["value1"]); // undefined
console.log(window["value2"]); // some value

我知道const是块范围的,这就是我无法通过窗口对象访问它的原因。我的问题是,是否有任何方法仅使用字符串标识符访问const变量。

如果我只能访问" value1",我该如何处理实际值1?甚至可能吗?

看来,块范围声明(如Let and Const(未添加到全局对象中,这意味着您无法通过窗口的属性访问它们。

请参阅堆栈溢出上的此相关问题:https://stackoverflow.com/a/287776236/10965456

评估应起作用eval("values1")以及功能构造函数new Function("return value1")(),尽管我不确定为什么需要这是必要的。如果您需要动态访问某些值,请改用数组,对象或映射。

最新更新