dynamic地将数据添加到JavaScript地图

有没有一种方法可以dynamic地将数据添加到JavaScript中的地图。 map.put(key,value) ? 我正在使用JavaScript的YUI库,但没有看到有什么支持这一点。

那么任何Javascript对象的functionsorting – 像一个“地图”

 randomObject['hello'] = 'world'; 

通常人们为了这个目的build立简单的对象:

 var myMap = {}; // ... myMap[newKey] = newValue; 

编辑 – 有一个明确的“放”function的问题是,你将不得不去努力,以避免函数本身看起来像地图的一部分。 这不是一件真正的事情。

20142月13日 – 现代JavaScript有创build不枚举的对象属性的设施 ,而且很容易做到。 但是,“put”属性(可否枚举)仍然会声明属性名称“put”并使其不可用。 也就是说,每个对象仍然只有一个名称空间。

现在Javascript已经有了一个名为Map的特定内置对象,你可以这样调用:

  var myMap = new Map() 

您可以使用.set更新它:

  myMap.set("key0","value") 

这有你可以用来处理查找的方法的优点,比如boolean .has

  myMap.has("key1"); // evaluates to false 

你可以在调用.get你的Map对象之前使用它来处理查找不存在的键