js做的hashmap

function HashMap()  
{  
    /** Map 大小 **/ 
    var size = 0;  
    /** 对象 **/ 
    var entry = new Object();  
       
    /** 存 **/ 
    this.put = function (key , value)  
    {  
       if(!this.containsKey(key))  
       {  
            size ++ ;  
        }  
        entry[key] = value;  
     }  
        
    /** 取 **/ 
    this.get = function (key)  
    {  
        return this.containsKey(key) ? entry[key] : null;  
    }  
      
    /** 删除 **/ 
    this.remove = function ( key )  
    {  
  if( this.containsKey(key) && ( delete entry[key] ) )  
     {  
      size --;  
     }  
  }  
        
  /** 是否包含 Key **/ 
 this.containsKey = function ( key )  
 {  
      return (key in entry);  
 }  
        
 /** 是否包含 Value **/ 
 this.containsValue = function ( value )  
 {  
      for(var prop in entry)  
      {  
          if(entry[prop] == value)  
          {  
               return true;  
          }  
       }  
       return false;  
  }  
        
 /** 所有 Value **/ 
 this.values = function ()  
 {  
     var values = new Array();  
  for(var prop in entry)  
  {  
          values.push(entry[prop]);  
     }  
     return values;  
 }  
        
 /** 所有 Key **/ 
 this.keys = function ()  
 {  
     var keys = new Array();  
     for(var prop in entry)  
     {  
      keys.push(prop);  
     }  
         return keys;  
  }  
        
 /** Map Size **/ 
 this.size = function ()  
 {  
     return size;  
 }  
        
 /** 清空 **/ 
  this.clear = function ()  
  {  
  size = 0;  
     entry = new Object();  
   }
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值