JavaScript实现Java中Map容器的方法


Posted in Javascript onOctober 09, 2016

本文实例讲述了JavaScript实现Java中Map容器的方法。分享给大家供大家参考,具体如下:

声明一下,JavaScript和Java的区别就像雷锋和雷峰塔的区别.

在Java中,Map是一种集合,用来存储Key-Value键值对的容器.根据键得到值,因此不允许键重复(重复了的覆盖),但允许值重复.JavaScript中的对象特性,就是不允许有相同的属性存在,和Java的Map非常的相似,所以可以利用这个特性在JavaScript中来实现Map容器,实现基本的增删查的操作.

function Map(){
  var obj = new Object(); //空对象容器,承装键值对
  //put方法
  this.put = function(key,value){
    obj[key] = value;   //把键值对绑定obj对象上
  }
  //size方法,获取Map容器个数
  this.size = function(){
    var count;
    for(var attr in obj){
      count++;
    }
    return count;
  }
  //get方法,根据key取得value
  this.get = function(key){
    if(obj[key] || obj[key] === 0 || obj[key] === false){
      return obj[key];
    }else{
      return null;
    }
  }
  //remove方法,根据key来删除键值对
  this.remove = function(key){
    if(obj[key] || obj[key] === 0 || obj[key] === false){
      delete obj[key];
    }
  }
  //遍历map容器元素方法,eachMap
  this.eachMap = function(fn){
    for(var attr in obj){
      fn(attr,obj[attr]);
    }
  }
}

希望本文所述对大家JavaScript程序设计有所帮助。

Javascript 相关文章推荐
js 居中漂浮广告
Mar 21 Javascript
简介JavaScript中的sub()方法的使用
Jun 08 Javascript
css如何让浮动元素水平居中
Aug 07 Javascript
跟我学习javascript的定时器
Nov 19 Javascript
JavaScript中捕获/阻止捕获、冒泡/阻止冒泡方法
Dec 07 Javascript
jQuery动态生成表格及右键菜单功能示例
Jan 13 Javascript
JS实现div模块的截图并下载功能
Oct 17 Javascript
Angular2.0/4.0 使用Echarts图表的示例代码
Dec 07 Javascript
vue使用 better-scroll的参数和方法详解
Jan 25 Javascript
Vue 页面状态保持页面间数据传输的一种方法(推荐)
Nov 01 Javascript
Element input树型下拉框的实现代码
Dec 21 Javascript
JS实现拖动模糊框特效
Aug 25 Javascript
JavaScript基于对象去除数组重复项的方法
Oct 09 #Javascript
JS中this上下文对象使用方式
Oct 09 #Javascript
JS判断来路是否是百度等搜索索引进行弹窗或自动跳转的实现代码
Oct 09 #Javascript
jQuery Ajax传值到Servlet出现乱码问题的解决方法
Oct 09 #Javascript
BootStrap中Table分页插件使用详解
Oct 09 #Javascript
微信小程序 for 循环详解
Oct 09 #Javascript
微信小程序 条件渲染详解
Oct 09 #Javascript
You might like
解析PHP 5.5 新特性
2013/07/02 PHP
Ajax+PHP快速上手及简单应用说明
2013/07/24 PHP
php邮件发送的两种方式
2020/04/28 PHP
PHP严重致命错误处理:php Fatal error: Cannot redeclare class or function
2017/02/05 PHP
php实现的错误处理封装类实例
2017/06/20 PHP
编写可维护面向对象的JavaScript代码[翻译]
2011/02/12 Javascript
php is_numberic函数造成的SQL注入漏洞
2014/03/10 Javascript
javascript event在FF和IE的兼容传参心得(绝对好用)
2014/07/10 Javascript
js时间日期格式化封装函数
2014/12/02 Javascript
javascript+HTML5的Canvas实现Lab单车动画效果
2015/08/07 Javascript
剖析Node.js异步编程中的回调与代码设计模式
2016/02/16 Javascript
使用Web Uploader实现多文件上传
2016/06/08 Javascript
微信JS-SDK自定义分享功能实例详解【分享给朋友/分享到朋友圈】
2016/11/25 Javascript
jQuery基于事件控制实现点击显示内容下拉效果
2017/03/07 Javascript
jQuery动态产生select option下拉列表
2017/03/15 Javascript
JS实现浏览上传文件的代码
2017/08/23 Javascript
JS实现瀑布流布局
2017/10/21 Javascript
bootstrap表格内容过长时用省略号表示的解决方法
2017/11/21 Javascript
详解NODEJS的http实现
2018/01/04 NodeJs
微信小程序实现指定显示行数多余文字去掉用省略号代替
2018/07/25 Javascript
jQuery实现点击旋转,再点击恢复初始状态动画效果示例
2018/12/11 jQuery
利用js-cookie实现前端设置缓存数据定时失效
2019/06/18 Javascript
turn.js异步加载实现翻书效果
2019/07/25 Javascript
js简单的分页器插件代码实例
2019/09/11 Javascript
Python实现统计给定列表中指定数字出现次数的方法
2018/04/11 Python
对python多线程中互斥锁Threading.Lock的简单应用详解
2019/01/11 Python
英国袜子店:Sock Shop
2017/01/11 全球购物
大学生毕业自我鉴定范文
2013/09/19 职场文书
小学教师的个人自我鉴定
2013/10/24 职场文书
出纳岗位职责模板
2013/11/27 职场文书
母校寄语大全
2014/04/10 职场文书
《春晓》教学反思
2014/04/20 职场文书
基层党建工作宣传标语
2014/06/24 职场文书
公务员年度考核个人总结
2015/02/12 职场文书
Linux7.6二进制安装Mysql8.0.27详细操作步骤
2021/11/27 MySQL
JavaScript的Set数据结构详解
2022/02/18 Javascript