HashMap在程序设计中,具有无可替代的重要作用。它提供m.put(key,value); m.get(key);之类的数据存储及读取方式,非常方便。但在JavaScript(HTML4.0的版本) 中,并没有提供这样的一种对象。以下这段代码用于创建Map对象,我已使用多年,效果良好,供需要的朋友参考。
一、Map源代码
/** Map is a general map object for storing key value pairs
* @param m - default set of properties
*/
var Map =function(m) {
var map;
if (typeof m == 'undefined') map = new Array();
else map = m;
/**
* Get a list of the keys to check
*/
this.keys = function() {
var _keys = new Array();
for (var _i in map){
_keys.push(_i);
}
return _keys;//
};
/**
* Put stores the value in the table
* @param key the index in the table where the value will be stored
* @param value the value to be stored
*/
this.put = function(key,value) {
map[key] = value;
};
/**
* Return the value stored in the table
* @param key the index of the value to retrieve
*/
this.get = function(key) {
return map[key];
};
/**
* Remove the value from the table
* @param key the index of the value to be removed
*/
this.remove = function(key) {
map[key]=null;
delete map[key];
};
/**
* Clear the table
*/
this.clear = function() {
delete map;
map = new Array();
};
}
二、创建Map对象
var m=new Map();
m.put("id","1000");
m.put("name","张三");
三、运用 www.2cto.com
document.getElementById("testMap").innerHTML=m.get("name");