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功能函数(2009-06-04更新)
Jun 04 Javascript
JS window.opener返回父页面的应用
Oct 24 Javascript
js不能跳转到上一页面的问题解决方法
Mar 01 Javascript
js获得参数的getParameter使用示例
Feb 26 Javascript
Javascript实现多彩雪花从天降散落效果的方法
Feb 02 Javascript
JavaScript通过this变量快速找出用户选中radio按钮的方法
Mar 23 Javascript
jQuery简单实现QQ空间点赞已经取消点赞
Apr 02 Javascript
jquery实现多条件筛选特效代码分享
Aug 28 Javascript
JavaScript跨域调用基于JSON的RESTful API
Jul 09 Javascript
微信小程序多张图片上传功能
Jun 07 Javascript
vue.js自定义组件directives的实例代码
Nov 09 Javascript
vue-resource:jsonp请求百度搜索的接口示例
Nov 09 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
Codeigniter购物车类不能添加中文的解决方法
2014/11/29 PHP
laravel Task Scheduling(任务调度)在windows下的使用详解
2019/10/22 PHP
PHP后门隐藏的一些技巧总结
2020/11/04 PHP
js location.replace与location.reload的区别
2010/09/08 Javascript
日期处理的js库(迷你版)--自建js库总结
2011/11/21 Javascript
jquery实现微博文字输入框 输入时显示输入字数 效果实现
2013/07/12 Javascript
Jquery 实现表格颜色交替变化鼠标移过颜色变化实例
2013/08/28 Javascript
Javascript MVC框架Backbone.js详解
2014/09/18 Javascript
Javascript实现禁止输入中文或英文的例子
2014/12/09 Javascript
jQuery实现右侧显示可向左滑动展示的深色QQ客服效果代码
2015/10/23 Javascript
JQuery validate插件Remote用法大全
2016/05/15 Javascript
Extjs 点击复选框在表格中增加相关信息行
2016/07/12 Javascript
详解Angular开发中的登陆与身份验证
2016/07/27 Javascript
基于Vuejs实现购物车功能
2016/08/02 Javascript
Bootstrap CSS布局之图像
2016/12/17 Javascript
JS字符串按逗号和回车分隔的方法
2017/04/25 Javascript
JavaScript Array.flat()函数用法解析
2020/09/02 Javascript
python 获取文件列表(或是目录例表)
2009/03/25 Python
Python数组条件过滤filter函数使用示例
2014/07/22 Python
Python方法的延迟加载的示例代码
2017/12/18 Python
Python3安装pip工具的详细步骤
2019/10/14 Python
Python大数据之从网页上爬取数据的方法详解
2019/11/16 Python
wxPython多个窗口的基本结构
2019/11/19 Python
python中图像通道分离与合并实例
2020/01/17 Python
Python图像处理库PIL的ImageEnhance模块使用介绍
2020/02/26 Python
python 爬虫之selenium可视化爬虫的实现
2020/12/04 Python
英语自我评价范文
2014/01/24 职场文书
教师四风问题对照检查材料
2014/09/26 职场文书
婚前财产协议书范本
2014/10/19 职场文书
开展党的群众路线教育实践活动工作总结
2014/11/05 职场文书
标准发言稿结尾
2019/07/18 职场文书
人生一定要学会的三样东西:放下、忘记、珍惜
2019/08/21 职场文书
pytorch--之halfTensor的使用详解
2021/05/24 Python
MySQL 外键约束和表关系相关总结
2021/06/20 MySQL
MySQL脏读,幻读和不可重复读
2022/05/11 MySQL
云服务器部署 Web 项目的实现步骤
2022/06/28 Servers