Javascript无法使用字符串名称引用Hashmap

时间:2017-08-11 17:28:03

标签: javascript reactjs object hashmap

我的javavscript代码中有多个Hashmap,我试图根据传递给函数的名称动态加载相关的地图。

问题是当我将值作为字符串值传递时,它实际上试图获取字符串的键而不是它引用的对象。

jsfiddle恰当地说明了我的问题。

Line 13给出预期的输出,而Line 14从字符串名称中创建键。

1 个答案:

答案 0 :(得分:0)

它基本上是区别:

Object.keys(PROP_ONE)

 Object.keys("PROP_ONE")

虽然第一个是解析为对象的标识符,但第二个只是一个字符串。不多。您可以使用括号表示法访问它,因为它是窗口的一部分:

Object.keys(window["PROP_ONE"]) 

声明:

总而言之,如果真的有必要,应该使用动态密钥。它们使您的代码更慢,更多的错误。