`
zengshaotao
  • 浏览: 800170 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

javascript,MAP功能

 
阅读更多

 

001 /*
002  * MAP对象,实现MAP功能
003  *
004  * 接口:
005  * size()     获取MAP元素个数
006  * isEmpty()    判断MAP是否为空
007  * clear()     删除MAP所有元素
008  * put(key, value)   向MAP中增加元素(key, value) 
009  * remove(key)    删除指定KEY的元素,成功返回True,失败返回False
010  * get(key)    获取指定KEY的元素值VALUE,失败返回NULL
011  * element(index)   获取指定索引的元素(使用element.key,element.value获取KEY和VALUE),失败返回NULL
012  * containsKey(key)  判断MAP中是否含有指定KEY的元素
013  * containsValue(value) 判断MAP中是否含有指定VALUE的元素
014  * values()    获取MAP中所有VALUE的数组(ARRAY)
015  * keys()     获取MAP中所有KEY的数组(ARRAY)
016  *
017  * 例子:
018  * var map = new Map();
019  *
020  * map.put("key", "value");
021  * var val = map.get("key")
022  * ……
023  *
024  */
025 function Map() {
026     this.elements = new Array();
027   
028     //获取MAP元素个数
029     this.size = function() {
030         return this.elements.length;
031     }
032   
033     //判断MAP是否为空
034     this.isEmpty = function() {
035         return (this.elements.length < 1);
036     }
037   
038     //删除MAP所有元素
039     this.clear = function() {
040         this.elements = new Array();
041     }
042   
043     //向MAP中增加元素(key, value) 
044     this.put = function(_key, _value) {
045         this.elements.push( {
046             key : _key,
047             value : _value
048         });
049     }
050   
051     //删除指定KEY的元素,成功返回True,失败返回False
052     this.remove = function(_key) {
053         var bln = false;
054         try {
055             for (i = 0; i < this.elements.length; i++) {
056                 if (this.elements[i].key == _key) {
057                     this.elements.splice(i, 1);
058                     return true;
059                 }
060             }
061         } catch (e) {
062             bln = false;
063         }
064         return bln;
065     }
066   
067     //获取指定KEY的元素值VALUE,失败返回NULL
068     this.get = function(_key) {
069         try {
070             for (i = 0; i < this.elements.length; i++) {
071                 if (this.elements[i].key == _key) {
072                     return this.elements[i].value;
073                 }
074             }
075         } catch (e) {
076             return null;
077         }
078     }
079   
080     //获取指定索引的元素(使用element.key,element.value获取KEY和VALUE),失败返回NULL
081     this.element = function(_index) {
082         if (_index < 0 || _index >= this.elements.length) {
083             return null;
084         }
085         return this.elements[_index];
086     }
087   
088     //判断MAP中是否含有指定KEY的元素
089     this.containsKey = function(_key) {
090         var bln = false;
091         try {
092             for (i = 0; i < this.elements.length; i++) {
093                 if (this.elements[i].key == _key) {
094                     bln = true;
095                 }
096             }
097         } catch (e) {
098             bln = false;
099         }
100         return bln;
101     }
102   
103     //判断MAP中是否含有指定VALUE的元素
104     this.containsValue = function(_value) {
105         var bln = false;
106         try {
107             for (i = 0; i < this.elements.length; i++) {
108                 if (this.elements[i].value == _value) {
109                     bln = true;
110                 }
111             }
112         } catch (e) {
113             bln = false;
114         }
115         return bln;
116     }
117   
118     //获取MAP中所有VALUE的数组(ARRAY)
119     this.values = function() {
120         var arr = new Array();
121         for (i = 0; i < this.elements.length; i++) {
122             arr.push(this.elements[i].value);
123         }
124         return arr;
125     }
126   
127     //获取MAP中所有KEY的数组(ARRAY)
128     this.keys = function() {
129         var arr = new Array();
130         for (i = 0; i < this.elements.length; i++) {
131             arr.push(this.elements[i].key);
132         }
133         return arr;
134     }
135 }
分享到:
评论

相关推荐

    javascript(map功能)

    * size() 获取MAP元素个数 * isEmpty() 判断MAP是否为空 * clear() 删除MAP所有元素 * put(key, value) 向MAP中增加元素(key, value) * remove(key) 删除指定KEY的元素,成功返回True,失败返回False * ...

    javascript Map对象 原型 插件

    javascript Map原型,对象,实现javascript中的Map数据类型功能

    JavaScript实现Array(数组)和Map

    `test.html` 和 `使用说明.txt` 可能是用来测试这些JavaScript文件功能的HTML页面和相关说明文档,通过运行test.html并查看控制台输出,我们可以验证和理解`array.js` 和 `map.js` 中代码的实际效果。 在实际开发中...

    javascript实现map功能极其方便

    javascript实现map,极其方便,可在需要当前页处理多数据时使用

    gmap.rar_GMAP_javascript_map_map javascript_map offline

    在描述中,“高人把google map的javascript全部下载下来 可以实现大部分功能 离线使用GOOGLEMAP”,说明了这是一个高手编写的程序,他或她已经将Google Maps的JavaScript库进行了本地化处理,使得开发者可以在没有...

    利用js实现Map

    实现Map功能 在JavaScript中,虽然已经有了内置的`Map`,但理解其实现原理对我们学习和使用这个数据结构大有裨益。下面是一个简单的`Map`实现示例: ```javascript class SimpleMap { constructor() { this....

    用javaScript实现的map,经过测试,很好用

    JavaScript Map 是一种...总的来说,JavaScript Map是一种强大的工具,它提供了灵活的数据存储和访问方式,扩展了JavaScript的原生功能。在实际开发中,理解并熟练使用Map可以帮助我们编写出更加高效和易于维护的代码。

    map-example.zip_html5_javascript_map

    在本项目中,“map-example.zip_html5_javascript_map”是一个包含使用HTML5和JavaScript实现的网页动态地图的压缩包。这个项目旨在展示如何利用这两种技术创建交互式地图应用,为用户提供丰富的地理信息可视化体验...

    JavaScript 实现Array(数组)和Map

    在JavaScript编程中,Array和Map是两种非常重要的数据结构,它们各自有其独特的作用和应用场景。Array主要用于存储一组有序的元素,而Map则提供了一种键值对的存储方式,适用于关联不同类型的值。 Array(数组)是...

    在JavaScript中实现map对象

    然而,在某些应用场景下,我们可能需要一种能够根据键(key)快速查找值(value)的数据结构,这便是Map对象的核心功能。虽然ES6引入了内置的`Map`构造函数,但在本文中,我们将通过模拟的方式,利用JavaScript中的数组...

    arcgis_javascript实现鹰眼功能实例

    根据提供的信息,我们可以深入探讨如何使用ArcGIS JavaScript API来实现地图中的“鹰眼”功能。“鹰眼”功能通常指的是在主地图旁边展示一个小型的地图视图,用来显示整个地图范围或者用户当前查看区域在整个地图中...

    JavaScript实现功能全集

    10. **ES6及后续版本的新特性**:例如类(class)、解构赋值、Promise、async/await、Set和Map等,这些都是提升JavaScript代码质量和可读性的现代特性。 11. **模块系统**:通过import和export关键字实现模块化,有...

    JavaScript中实现Map的示例代码

    在本示例中,我们将详细讨论如何使用自定义函数实现一个简单的Map功能。 首先,创建一个新的Map实例: ```javascript var map = new Map(); ``` 接着,我们可以使用`put`方法来添加键值对: ```javascript map.put...

    googlemap 地图功能

    在JavaScript环境下,通过Google Maps JavaScript API,开发者可以将这些功能集成到自己的网页应用中,实现丰富的地图交互效果。下面将详细介绍如何使用Google Maps API以及其主要功能。 首先,要使用Google Maps ...

    Javascript 中类似Map集合的实现键值对

    在JavaScript中,`Map`集合是一个内置的数据结构,用于存储键值对,它与对象不同,因为对象的键必须是字符串或符号,而`Map`则可以使用任何可哈希的值作为键。这篇博客文章可能探讨了如何通过自定义方式实现一个类似...

    JavaScript中实现map功能代码分享

    虽然JavaScript的内置`Map`对象提供了这个功能,但在某些情况下,可能需要自定义一个简单的`Map`实现,特别是在不支持ES6或需要更轻量级解决方案的旧版JavaScript环境中。本篇文章将详细介绍如何使用JavaScript实现...

    goole map动态连线 javaScript 异步调用C#

    本话题主要关注如何使用JavaScript异步调用C#代码来实现在Google Map上动态连线的功能。下面我们将深入探讨这个主题。 首先,让我们了解动态连线在Google Map上的实现。动态连线通常指的是在地图上根据实时数据创建...

    JavaScript实现Java中Map容器的方法

    JavaScript实现Java中Map容器的方法主要依赖于JavaScript对象的特性,即对象中不能有重复的属性名,这与Java中的Map功能相似。在给出的代码示例中,通过构造函数functionMap创建了一个“Map”对象,并为该对象定义了...

    iClinet for JavaScript图层过滤功能

    iClinet for JavaScript是一款由SuperMap公司开发的地图客户端库,专为Web应用程序提供地图展示、交互和数据分析功能。本文将详细解析如何在JavaScript环境中利用iClinet实现图层过滤功能,帮助用户根据特定条件筛选...

    js中Map应用

    ### JavaScript中的Map应用 在JavaScript中,`Map`对象是一种内置的数据结构,它保存键值对,并且可以按插入顺序记住元素。与普通的JavaScript对象不同的是,`Map`的键可以是任何类型的值(不仅仅是字符串或符号)...

Global site tag (gtag.js) - Google Analytics