您的位置:首页 > Web前端 > JavaScript

在JavaScript中实现自己的Map对象

2011-11-15 13:25 337 查看
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","张三");

三、运用

<div id="testMap"'></div>

<script type='text/javascript'>

document.getElementById("testMap").innerHTML=m.get("name");

</script>
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: