HashMap是java中适用最广泛的接口之一,可惜在JS中没有类似的功能需要自己实现
下面的代码利用js实现了一个简单的HashMap
//利用JS模拟HashMap
function JMap(){
this.keyArr = new Array();//存放键值的数组
this.valueArr = new Array();//存放内容值的数组
this.length = 0;
}
JMap.prototype.put = function (key, value)
{
key = key.toString().replace(/^\s+|\s+$/g,"");
var len = this.containsKey(key);
if(len==-1){
this.keyArr[this.length] = key;
this.valueArr[this.length] = value;
this.length ++;
}else{
this.valueArr[len] = value;
}
}
//判断指定的键值是否存在,返回改键值在键值数组中的位置
JMap.prototype.containsKey = function (key){
var len = -1;
for(var i=0;i<this.length;i++){
if(key==this.keyArr[i]){
len = i;
break;
}
}
return len;
}
JMap.prototype.get = function (key)
{
var the_value = "";
for(var i=0;i<this.length;i++){
if(key==this.keyArr[i]){
the_value = this.valueArr[i];
break;
}
}
return the_value;
}