DooIT@江西搜才网

  博客园 :: 首页 :: 新随笔 :: 联系 :: 订阅 订阅 :: 管理 ::
  49 随笔 :: 17 文章 :: 1146 评论 :: 28 引用
<script language="javascript" type="text/javascript">

function Hashtable()
{
    
this._hash        = new Object();
    
this.add        = function(key,value){
                        
if(typeof(key)!="undefined"){
                            
if(this.contains(key)==false){
                                
this._hash[key]=typeof(value)=="undefined"?null:value;
                                
return true;
                            } 
else {
                                
return false;
                            }
                        } 
else {
                            
return false;
                        }
                    }
    
this.remove        = function(key){delete this._hash[key];}
    
this.count        = function(){var i=0;for(var k in this._hash){i++;} return i;}
    
this.items        = function(key){return this._hash[key];}
    
this.contains    = function(key){ return typeof(this._hash[key])!="undefined";}
    
this.clear        = function(){for(var k in this._hash){delete this._hash[k];}}

}

var a = new Hashtable();

a.add(
"aa");
a.add(
"bb",2342);
a.add(
"bb",2342);

a.remove(
"aa");

alert(a.count());

alert(a.contains(
"bb"));

alert(a.contains(
"aa"));

alert(a.items(
"bb"));


</script>
欢迎访问江西搜才网
posted on 2005-07-30 23:24 ttyp 阅读(4366) 评论(6) 编辑 收藏

评论

你写的都是精品。收下了,以后备用。
 回复 引用   

这个 Hashtable 太简单了,基本上没有什么价值,建议看看jsvm2的js.util.HashMap
 回复 引用   

那不如用dic组件了...就是8通用
 回复 引用   

#4楼 2007-05-31 15:34 winter[未注册用户]
特殊值必须处理
用一个数组hash表来判断"hasOwnProperty" "__proto__"等特殊键值
 回复 引用   

#5楼[楼主] 2007-05-31 16:53 ttyp      
@winter
还真不知道这个关键字,不过我这个只是简单应用,基本上是不会用到这个关键字的
 回复 引用 查看   

收下了,
 回复 引用 查看