有没有办法可以在javascript中动态地将数据添加到地图中。一个map.put(key,value)
?我使用yui库为javascript,但没有看到任何支持这个。
答案 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之前使用它来处理查找不存在的键