这里有新鲜出炉的 Javascript 教程,程序狗速度看过来!
Javascript 是一种由 Netscape 的 LiveScript 发展而来的原型化继承的基于对象的动态类型的区分大小写的客户端脚本语言,主要目的是为了解决服务器端语言,比如 Perl,遗留的速度问题,为客户提供更流畅的浏览效果。
这篇文章主要介绍了 JavaScript 实现 Java 中 Map 容器的方法, 结合实例形式分析了 JavaScript 实现 Java 中 Map 容器的原理与相关实现技巧, 需要的朋友可以参考下
本文实例讲述了 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 程序设计有所帮助。
来源: http://www.phperz.com/article/17/0521/331356.html