JS Map
来源:互联网 发布:silverlight mac 编辑:程序博客网 时间:2024/04/24 14:14
/**
* 模拟java HashMap
* @author king
**/
function Map(){
this.keys = new Array();
this.values = new Array();
}
/**
* 将元素放入Map
* @param key
* @param value
* @author king
**/
Map.prototype.put = function(key,value){
if(!key){return ;}
if(!value){return;}
var i = eval("this.KeyIndex_" + key);
if(i == undefined){
i = this.keys.length;
eval("this.KeyIndex_" + key +" = i;");
}
if(i >= 0 && i < this.values.length){
this.values[i] = value;
} else {
this.keys[this.values.length] = key;
this.values[this.values.length] = value;
}
}
/**
* 得到键值为key的元素
* @param key
* @author king
**/
Map.prototype.get = function (key){
var i = eval("this.KeyIndex_" + key);
if(i == undefined){
return "";
}
if(i >= 0 && i < this.values.length){
return this.values[i]==null?"":this.values[i];
}
return "";
}
/**
* 从Map中删除键值为key元素
* @param key
* @author king
**/
Map.prototype.remove = function (key){
var i = eval("this.KeyIndex_" + key);
if(i == undefined){
return ;
}
if(i >= 0 && i < this.values.length){
eval("this.KeyIndex_" + key+"=undefined;");
this.keys[i] = "";
this.values[i] = "";
}
setTimeout("CollectGarbage();",1500);
}
/**
*删除所有对象引用
*@author king
*/
Map.prototype.removeAll = function (){
for(i=0;i<this.values.length;i++){
eval("this.KeyIndex_" + this.keys[i] +" = undefined;");
this.keys.splice(i,1);
this.values.splice(i,1);
}
}
/**
* 得到Map的大小
* @author king
**/
Map.prototype.size = function (){
return this.keys.length;
}
* 模拟java HashMap
* @author king
**/
function Map(){
this.keys = new Array();
this.values = new Array();
}
/**
* 将元素放入Map
* @param key
* @param value
* @author king
**/
Map.prototype.put = function(key,value){
if(!key){return ;}
if(!value){return;}
var i = eval("this.KeyIndex_" + key);
if(i == undefined){
i = this.keys.length;
eval("this.KeyIndex_" + key +" = i;");
}
if(i >= 0 && i < this.values.length){
this.values[i] = value;
} else {
this.keys[this.values.length] = key;
this.values[this.values.length] = value;
}
}
/**
* 得到键值为key的元素
* @param key
* @author king
**/
Map.prototype.get = function (key){
var i = eval("this.KeyIndex_" + key);
if(i == undefined){
return "";
}
if(i >= 0 && i < this.values.length){
return this.values[i]==null?"":this.values[i];
}
return "";
}
/**
* 从Map中删除键值为key元素
* @param key
* @author king
**/
Map.prototype.remove = function (key){
var i = eval("this.KeyIndex_" + key);
if(i == undefined){
return ;
}
if(i >= 0 && i < this.values.length){
eval("this.KeyIndex_" + key+"=undefined;");
this.keys[i] = "";
this.values[i] = "";
}
setTimeout("CollectGarbage();",1500);
}
/**
*删除所有对象引用
*@author king
*/
Map.prototype.removeAll = function (){
for(i=0;i<this.values.length;i++){
eval("this.KeyIndex_" + this.keys[i] +" = undefined;");
this.keys.splice(i,1);
this.values.splice(i,1);
}
}
/**
* 得到Map的大小
* @author king
**/
Map.prototype.size = function (){
return this.keys.length;
}
- JS Map
- js map
- js map
- js map
- js map
- Map.js
- js map
- js-map
- js map
- js Map
- js map
- Js Map
- js map
- js Map
- js Map
- js map
- js map()
- js map
- Delphi中POST方法获得网页源代码
- MyEclipse 经常键盘失效 Linux解决方法
- Hibernate继承映射的两种策略
- 原来pmplayer-advance的工程在google code上面
- JS StringBuffer
- JS Map
- 学习SQL SERVER的存储过程-之一认识存储过程语法
- 装饰模式
- 解决Cannot create JDBC driver of class '' for connect URL 'null'
- 病了……
- 敏捷过程在中国软件企业的实践——前言
- Cannot create JDBC driver of class '' for connect URL 'null'解决方法2——对我有效
- 如何制作网站
- 调用局域网其他计算机程序的脚本