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));