好钢得用在刀刃上……
BlogJava
首页
新随笔
联系
聚合
管理
随笔-9 评论-0 文章-0 trackbacks-0
JavaScript 实现类似hashtable 的功能
页面上经常需要临时保存一些数据,这些数据需要根据Key来保存或者修改Value,查看了些资料,稍微修改了一下。
如下:
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
.update
=
function
(key,value)
{
if
(
typeof
(key)
!=
"
undefined
"
)
{
if
(
this
.contains(key)
==
true
)
{
this
.remove(key);
this
.add(key,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
.indexValue
=
function
(index)
{
var
i
=
0
;
for
(
var
k
in
this
._hash)
{
if
(i
==
index)
{
return
this
._hash[k];
}
i
++
;
}
}
//
/返回值、根据KEY值来返回
this
.items
=
function
(key)
{
return
this
._hash[key];}
//
/是否存在true or false;
this
.contains
=
function
(key)
{
return
typeof
(
this
._hash[key])
!=
"
undefined
"
;
}
//
/清空
this
.clear
=
function
()
{
for
(
var
k
in
this
._hash)
{
delete
this
._hash[k];
}
}
}
使用方法:
1、声明
var
hashTab
=
new
HashTable();
2、添加Key和Value
hashTab.add(strKey,strValue)
3、修改
hashTab.update(strKey,strValue);
4、判断Key是否存在
hashTab.contains(strKey);
5、删除Key
hashTab.remove(strKey)
6、根据Key返回Value
hashTab.items(strKey)
7、返回记录条数
hashTab.count()
8、根据IndexId返回第几条数据(遍历的时用)
hashTab.indexValue(IndexId)
9、清空所有数据
hashTab.clear()
posted on 2009-10-30 12:34
AndyFish
阅读(320)
评论(0)
编辑
收藏
所属分类:
JavaScript
新用户注册
刷新评论列表
只有注册用户
登录
后才能发表评论。
网站导航:
博客园
IT新闻
知识库
C++博客
博问
管理
相关文章:
JavaScript 实现类似hashtable 的功能
insertAdjacentElement Method
<
2024年11月
>
日
一
二
三
四
五
六
27
28
29
30
31
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
1
2
3
4
5
6
7
常用链接
我的随笔
我的评论
我的参与
留言簿
给我留言
查看公开留言
查看私人留言
随笔分类
JavaScript(2)
基础知识(3)
随笔档案
2010年3月 (1)
2010年2月 (4)
2010年1月 (1)
2009年11月 (1)
2009年10月 (2)
搜索
最新评论
阅读排行榜
1. JavaScript 实现类似hashtable 的功能(320)
2. Struts2拦截器的使用 (详解) (268)
3. hibenate的面试总结(181)
4. String与StringBuffer的区别(145)
5. 本田宗一郎经营语录(130)
评论排行榜
1. hibenate的面试总结(0)
2. Struts2拦截器的使用 (详解) (0)
3. 职场杰出人士的20个好习惯(0)
4. 公司绝不会告诉你的10大秘密(0)
5. 本田宗一郎经营语录(0)