动态添加数据到javascript地图

时间:2010-06-03 14:39:54

标签: javascript data-structures maps yui

有没有办法可以在javascript中动态地将数据添加到地图中。一个map.put(key,value)?我使用yui库为javascript,但没有看到任何支持这个。

2 个答案:

答案 0 :(得分:100)

任何Javascript对象的功能都类似于“地图”

randomObject['hello'] = 'world';

通常人们会为此目的构建简单的对象:

var myMap = {};

// ...

myMap[newKey] = newValue;

编辑 - 具有明确的“put”功能的问题在于,您必须努力避免让函数本身看起来像地图的一部分。这不是一个真正的Javascripty事情。

2014年2月13日 - 现代JavaScript有facilities用于创建不可枚举的对象属性,而且很容易做到。但是,仍然存在这样一种情况,即“可放置”属性(可枚举与否)将声明属性名称“put”并使其不可用。也就是说,每个对象仍然只有一个命名空间。

答案 1 :(得分:26)

Javascript现在有一个名为Map的特定内置对象,你可以调用如下:

   var myMap = new Map()

您可以使用.set:

进行更新
   myMap.set("key0","value")

这具有可用于处理查找的方法的优点,例如boolean .has

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

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