Javascript实现的Map集合工具类完整实例
本文实例讲述了Javascript实现的Map集合工具类。分享给大家供大家参考。具体如下:
varMap=function(){ //构造entry实体 varEntry=function(key,value){ this.key=key; this.value=value; } this.entries=newArray(); //构造put方法在数组中放入一个Entry this.put=function(key,value){ //数组中已存在就不放入 for(vari=0;i<this.size();i++){ if(this.entries[i].key===key){ returnfalse; } } this.entries.push(newEntry(key,value)); }; //模拟get方法 this.get=function(key){ for(vari=0;i<this.size();i++){ if(this.entries[i].key===key){ returnthis.entries[i].value; } } returnnull; }; //查找下标值 this.indexOf=function(key){ varindex=-1; for(vari=0;i<this.size();i++){ if(this.entries[i].key===key){ index=i; break; } } returnindex; } //删除一个元素 this.remove=function(key){ varindex=this.indexOf(key); if(index!=-1){ this.entries.splice(index,1); } } //取得map长度 this.size=function(){ returnthis.entries.length; }; //重新设置键值对 this.setValue=function(key,value){ varindex=this.indexOf(key); if(index!=-1){ this.entries[i].value=value; }; }; //是否为空map this.isEmpty=function(){ returnthis.size()<=0; }; //清空map; this.clear=function(){ this.entries=[]; }; //得到entry实体 this.getEntry=function(index){ if(index>=0&&index<this.size()){ returnthis.entries[index]; } returnnull; } this.toString=function(){ varstr="["; for(vari=0;i<this.size();i++){ str+=this.getEntry(i).key+"="+this.getEntry(i).value+","; } //去除最后一个"," str=str.substring(0,str.length-1); str+="]"; returnstr; }; }
希望本文所述对大家的javascript程序设计有所帮助。