javascript实现的HashMap类代码


Posted in Javascript onJune 27, 2014
<script language = "javascript" >

function HashMap() {

    /**Map大小**/

    var size = 0;

    /**对象**/

    var entry = new Object();

    /**Map的存put方法**/

    this.put = function(key, value) {

        if (!this.containsKey(key)) {

            size++;

            entry[key] = value;

        }

    }

    /**Map取get方法**/

    this.get = function(key) {

        return this.containsKey(key) ? entry[key] : null;

    }

    /**Map删除remove方法**/

    this.remove = function(key) {

        if (this.containsKey(key) && (delete entry[key])) {

            size--;

        }

    }

    /**是否包含Key**/

    this.containsKey = function(key) {

        return (key in entry);

    }

    /**是否包含Value**/

    this.containsValue = function(value) {

        for (var prop in entry) {

            if (entry[prop] == value) {

                return true;

            }

        }

        return false;

    }

    /**所有的Value**/

    this.values = function() {

        var values = new Array();

        for (var prop in entry) {

            values.push(entry[prop]);

        }

        return values;

    }

    /**所有的 Key**/

    this.keys = function() {

        var keys = new Array();

        for (var prop in entry) {

            keys.push(prop);

        }

        return keys;

    }

    /**Map size**/

    this.size = function() {

        return size;

    }

    /**清空Map**/

    this.clear = function() {

        size = 0;

        entry = new Object();

    }
}

//创建HashMap对象 

var hashMap = new HashMap();

hashMap.put("A", "1");

hashMap.put("B", "2");

hashMap.put("A", "5");

hashMap.put("C", "3");

hashMap.put("A", "4");

alert(hashMap.size());
</script>
Javascript 相关文章推荐
JQuery与iframe交互实现代码
Dec 24 Javascript
JavaScript开发规范要求(规范化代码)
Aug 16 Javascript
javascript判断是手机还是电脑访问网页的简单实例分享
Jun 03 Javascript
用Jquery.load载入页面后样式没了页面混乱的解决方法
Oct 20 Javascript
js与css实现弹出层覆盖整个页面的方法
Dec 13 Javascript
javascript里使用php代码实例
Dec 13 Javascript
Jquery 实现弹出层插件
Jan 28 Javascript
基于dropdown.js实现的两款美观大气的二级导航菜单
Sep 02 Javascript
JS排序方法(sort,bubble,select,insert)代码汇总
Jan 30 Javascript
JS中超越现实的匿名函数用法实例分析
Jun 21 Javascript
JS造成内存泄漏的几种情况实例分析
Mar 02 Javascript
原生JavaScript实现五子棋游戏
Nov 09 Javascript
js图片滚动效果时间可随意设定当鼠标移上去时停止
Jun 26 #Javascript
Javascript字符串对象的常用方法简明版
Jun 26 #Javascript
fixedBox固定div漂浮代码支持ie6以上大部分主流浏览器
Jun 26 #Javascript
js实现回放拖拽轨迹从过程上进行分析
Jun 26 #Javascript
JS的事件绑定深入认识
Jun 26 #Javascript
jquery 页眉单行信息滚动显示实现思路及代码
Jun 26 #Javascript
jquery的clone方法应用于textarea和select的bug修复
Jun 26 #Javascript
You might like
php生成QRcode实例
2014/09/22 PHP
常用PHP框架功能对照表
2014/10/23 PHP
如何在HTML 中嵌入 PHP 代码
2015/05/13 PHP
thinkphp5.0自定义验证规则使用方法
2017/11/16 PHP
php的无刷新操作实现方法分析
2020/02/28 PHP
js函数般调用正则
2008/04/08 Javascript
一个cssQuery对象 javascript脚本实现代码
2009/07/21 Javascript
最常用的12种设计模式小结
2011/08/09 Javascript
JavaScript原型链示例分享
2014/01/26 Javascript
jquery实现input输入框实时输入触发事件代码
2014/01/28 Javascript
Nodejs实现的一个简单udp广播服务器、客户端
2014/09/25 NodeJs
jQuery中animate()方法用法实例
2014/12/24 Javascript
js判断日期时间有效性的方法
2015/10/24 Javascript
js调出上下文菜单的实例
2015/12/17 Javascript
Eclipse编辑jsp、js文件时卡死现象的解决办法汇总
2016/02/02 Javascript
JS文件上传神器bootstrap fileinput详解
2021/01/28 Javascript
JS 组件系列之BootstrapTable的treegrid功能
2017/06/16 Javascript
backbone简介_动力节点Java学院整理
2017/07/14 Javascript
react-router4 嵌套路由的使用方法
2017/07/24 Javascript
vue表单绑定实现多选框和下拉列表的实例
2017/08/12 Javascript
jQuery访问浏览器本地存储cookie、localStorage和sessionStorage的基本用法
2017/10/20 jQuery
Vue源码之关于vm.$delete()/Vue.use()内部原理详解
2019/05/01 Javascript
基于elementUI竖向表格、和并列的案例
2020/10/26 Javascript
[02:20]DOTA2中文配音宣传片
2013/05/22 DOTA
探究数组排序提升Python程序的循环的运行效率的原因
2015/04/01 Python
Python合并多个装饰器小技巧
2015/04/28 Python
Python基于有道实现英汉字典功能
2015/07/25 Python
Python 读取图片文件为矩阵和保存矩阵为图片的方法
2018/04/27 Python
Keras实现DenseNet结构操作
2020/07/06 Python
Sneaker Studio波兰:购买运动鞋
2018/04/28 全球购物
投标承诺书范本
2014/03/27 职场文书
专项法律服务方案
2014/06/11 职场文书
学生评语集锦
2015/01/04 职场文书
纯CSS实现酷炫的霓虹灯效果
2021/04/13 HTML / CSS
pytorch 两个GPU同时训练的解决方案
2021/06/01 Python
sql查询语句之平均分、最高最低分及排序语句
2022/05/30 MySQL