`
xiegangthrille
  • 浏览: 93655 次
  • 性别: Icon_minigender_1
  • 来自: 长沙
社区版块
存档分类
最新评论

用javascript封装的一个HashMap,形似神非

阅读更多
function HashMap(){
            this.size=0;
            this.map=new Object();
        }
        
        HashMap.prototype.put=function(key,value){
            if(!this.map[key]){
                this.size++;
            }
            this.map[key]=value;
        }
        HashMap.prototype.get=function(key){
            return this.isKey(key)?this.map[key]:null;
        }
        HashMap.prototype.isKey=function(key){
            return (key in this.map);
        }
        HashMap.prototype.remove=function(key){
          if( this.isKey(key) && (delete this.map[key])){  
                this.size--;  
          }  
        }
        
        HashMap.prototype.size=function(){
            return this.size;
        }
        
        HashMap.prototype.find=function(_callback){
            for(var _key in this.map){
                _callback.call(this,_key,this.map[_key]);
            }
        }
function testHashMap(){
            var map=new HashMap();
            map.put("a","中");
            map.put("b","国");
            map.put("c","人");
            map.put("d","民");
            
            //map.remove("a");
            map.remove("b");
            map.find(function(key,value){
                map.remove(key);
            });
            alert(map.size());
        }

 

分享到:
评论

相关推荐

    Javascript实现和操作HashMap

    在JavaScript中,我们可以利用对象(object)作为HashMap的基础,因为JavaScript的对象本质上就是一个键值对的集合,其内部已经实现了哈希表的机制。 ### 自定义HashMap ```javascript class HashMap { ...

    基于JavaScript的HashMap实现

    此外,博客中可能还会讨论到性能优化,如使用`Object.create(null)`来创建一个没有原型的对象,避免不必要的属性查找,以及如何处理`null`和`undefined`作为键的情况,因为它们在JavaScript中被视为`falsey`值。...

    一个基于js的HashMap

    下面我们将详细讨论如何在JavaScript中创建一个基于js的HashMap以及它的相关知识点。 首先,HashMap的核心在于其内部实现的哈希函数,它能将键转换为唯一的哈希码,使得我们可以快速定位到存储的值。在JavaScript中...

    HashMap的二次封装

    理解面向对象后的代码抽取,HashMap的二次封装,总之目的减少点代码工作量,见代码示例

    javaScript模拟的HashMap数据结构的对象

    javaScript模拟的HashMap数据结构,可以方便的put和get。几乎和Java中HashMap类的功能一模一样。非常好用的!

    用HashMap模拟一个网上购物车

    在本实验中,我们通过使用Java语言中的`HashMap`来模拟一个简单的网上购物车系统。该项目的主要目的是熟悉Java集合框架中的`HashMap`类,并了解如何利用它来存储、管理和检索数据。此外,我们还将学习如何使用`...

    hashmap面试题_hashmap_

    2. 可空性:键和值都可以为null,但一个HashMap只能有一个键为null的条目。 3. 默认容量:16,负载因子0.75,当容量达到负载因子乘以当前容量时,会发生扩容。 四、HashMap面试题解析 1. HashMap的初始容量和扩容...

    HashMap介绍和使用

    这里的`Entry`是HashMap内部的一个静态类,用于存储键值对以及下一个节点的引用,构成链表: ```java static class Entry,V> implements Map.Entry,V> { final K key; V value; final int hash; Entry,V> next;...

    用HashMap写的一个小Demo用来写游戏排名的一种方法

    在这个"用HashMap写的一个小Demo用来写游戏排名的一种方法"的示例中,我们很可能会看到如何利用HashMap来组织游戏分数并进行排序,以实现一个简单的游戏排名系统。 HashMap的特点在于它的键(key)是唯一的,每个键...

    一个delphi的hashmap源代码

    在这个特定的案例中,我们有一个名为"一个delphi的hashmap源代码"的压缩包,其中包含三个不同的哈希表实现:TIntegerHashList、TStringHashList和TObjectHashList。这些类分别针对整数、字符串和对象类型的键进行了...

    hashmap 集合

    6. 使用接口而非实现类:在声明变量时,使用Map而非HashMap,这样在实际运行时可以更灵活地更换其他类型的Map,如LinkedHashMap,以改变元素的排序或性能特性。 CacheManager.java文件可能是一个用于管理缓存的类,...

    js 版 java hashmap

    在描述中提到的"js版java HashMap"可能是指一个JavaScript实现的HashMap类,它模仿了Java中的HashMap数据结构,提供了更高效和灵活的操作。Java的HashMap是一个基于哈希表的Map接口实现,提供快速的插入、删除和查找...

    flex HashMap

    flex 封装的一个HashMap。使用挺方便的。(免积分下载)

    用hashmap实现词典查询

    如果存在冲突(多个键映射到同一个位置),HashMap通常会使用链表或红黑树来处理这些冲突,确保查找效率仍然保持较高。 为了实现词典查询,我们需要以下步骤: 1. **读取字典文件**:字典文件通常包含一系列词条,...

    hashmap实现原理

    `resize()`方法会创建一个新的、两倍大的数组,并使用`transfer()`方法将旧数组的所有元素重新插入到新数组中。这个过程称为rehash,它重新计算每个元素的哈希码并确定在新数组中的位置,以确保键值对的正确映射。 ...

    HashMap和HashTable的区别和不同

    - **HashMap**: 相较之下,`HashMap`不是一个线程安全的类。如果多个线程并发地访问并修改`HashMap`,则可能导致数据不一致性问题。为了在多线程环境中安全地使用`HashMap`,开发者需要自己负责同步,例如使用`...

    HashMap的数据结构

    为了解决这个问题,HashMap使用了链地址法,即在每个数组索引位置上存储一个链表,碰撞的键值对会被链接到同一个索引位置的链表上。 1. **哈希函数**:哈希函数是HashMap的核心,它的目标是将键转换为数组的索引。...

    HashMap总结

    HashMap 是基于哈希表(Hash Table)实现的,哈希表是一个存储键值对的数据结构,它使用哈希函数将键转换为索引,然后将键值对存储在数组中。HashMap 使用链表来解决哈希冲突的问题,即当两个键的哈希值相同时,...

    Java HashMap类详解

    HashMap 的使用可以通过创建一个 HashMap 对象,然后使用 put 方法将 key-value 对添加到该对象中。例如: Java 代码 HashMap, Double> map = new HashMap, Double>(); map.put("语文", 80.0); map.put("数学", ...

    javascript实现的HashMap类代码

    标题所揭示的知识点是关于如何使用JavaScript实现一个自定义的HashMap类。HashMap是一种常见的数据结构,广泛用于存储键值对,它允许快速的查找和更新。在计算机编程中,使用类似于Java或JavaScript这样的语言实现...

Global site tag (gtag.js) - Google Analytics