转自:http://blog.csdn.net/BearRui/article/details/3297178
因JavaScript中允许任意对象作为下标,使的Object可以有任意的key做为属性。
下面的列子中展示如何在JS中很方便的使用哈希表
-
- <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
- <HTML>
- <HEAD>
- <TITLE> New Document </TITLE>
- <script type="text/javascript">
- <!--
- var hashTable = new Object(); // 声明对象
- // 添加
- function add(key,value){
- // 判断key是否存在
- if(key in hashTable){
- alert("key已经存在");
- }
- hashTable[key] = value;
- }
- //删除
- function del(key){
- delete(hashTable[key]);
- alert("删除成功");
- }
- // 取值
- function getValue(key){
- alert(hashTable[key]);
- }
- // 循环所有值
- function getAll(){
- for(var k in hashTable){
- document.write(k+":" +hashTable[k] + "<br />");
- }
- }
- function $v(id){
- return document.getElementById(id).value;
- }
- //-->
- </script>
- </HEAD>
-
- <BODY>
- <div>
- Key:<input type="text" id="k" /><br />
- Value:<input type="text" id="v" /><br />
- </div>
- <input type="button" value="add" onclick="add($v('k'),$v('v'));" />
- <input type="button" value="delete" onclick="del($v('k'));" />
- <input type="button" value="get" onclick="getValue($v('k'));" />
- <input type="button" value="getAll" onclick="getAll();" />
- </BODY>
- </HTML>
-