JavaScript是没有HashMap的标准实现的,但是我们可以使用Object的特性完成HashMap的功能,例如:
var divRequestMap = new Object();
function ajax_loaddiv_get(url,divId)
{
if(divRequestMap[divId] != null)
{
abortRequest(divRequestMap[divId]);
}
var req = createrequest();
divRequestMap[divId]=req;
…
}
从上面的代码我们看到可以直接将字符串做为数组下标使用,这个和HashMap中使用字符串做为关键字存取内容是类似的,但是不足的是没有HashMap的对于主键和值集合进行遍历的方法。
如果要一个功能全面的HashMap也很简单,网上有很多标准实现。
推荐一个简单的实现,也可以直接下载封装好的JS文件。
(Visited 333 times, 1 visits today)
2006年10月23日 at 21:09
刚看到你的站 :)
其实divRequestMap 是一个对象,并不是一个数组,divRequestMap[’字符串’]里的字符串是这个对象的一个属性,并不是数组下标。遍历对象的属性用这种方式:
for( prop in divRequestMap)
{
value = divRequestMap[prop ];
}
2006年10月23日 at 21:27
呵呵,早说啊,害得我另外用了一个数组保存主键。我的意思是类似数组下标的用法,perl语言里面有类似的特性。