javascript 中Map的使用
/* * MAP对象,实现MAP功能 * * 接口: * size() 获取MAP元素个数 * isEmpty() 判断MAP是否为空 * clear() 删除MAP所有元素 * put(key, value) 向MAP中增加元素(key, value) * remove(key) 删除指定KEY的元素,成功返回True,失败返回False * get(key) 获取指定KEY的元素值VALUE,失败返回NULL * element(index) 获取指定索引的元素(使用element.key,element.value获取KEY和VALUE),失败返回NULL * containsKey(key) 判断MAP中是否含有指定KEY的元素 * containsValue(value) 判断MAP中是否含有指定VALUE的元素 * values() 获取MAP中所有VALUE的数组(ARRAY) * keys() 获取MAP中所有KEY的数组(ARRAY) * * 例子: * var map = new Map(); * * map.put("key", "value"); * var val = map.get("key") * …… * */ function Map() { this.elements = new Array(); //获取MAP元素个数 this.size = function() { return this.elements.length; }; //判断MAP是否为空 this.isEmpty = function() { return (this.elements.length < 1); }; //删除MAP所有元素 this.clear = function() { this.elements = new Array(); }; //向MAP中增加元素(key, value) this.put = function(_key, _value) { this.elements.push( { key : _key, value : _value }); }; //删除指定KEY的元素,成功返回True,失败返回False this.remove = function(_key) { var bln = false; try { for (i = 0; i < this.elements.length; i++) { if (this.elements[i].key == _key) { this.elements.splice(i, 1); return true; } } } catch (e) { bln = false; } return bln; }; //获取指定KEY的元素值VALUE,失败返回NULL this.get = function(_key) { try { for (i = 0; i < this.elements.length; i++) { if (this.elements[i].key == _key) { return this.elements[i].value; } } } catch (e) { return null; } }; //获取指定索引的元素(使用element.key,element.value获取KEY和VALUE),失败返回NULL this.element = function(_index) { if (_index < 0 || _index >= this.elements.length) { return null; } return this.elements[_index]; }; //判断MAP中是否含有指定KEY的元素 this.containsKey = function(_key) { var bln = false; try { for (i = 0; i < this.elements.length; i++) { if (this.elements[i].key == _key) { bln = true; } } } catch (e) { bln = false; } return bln; }; //判断MAP中是否含有指定VALUE的元素 this.containsValue = function(_value) { var bln = false; try { for (i = 0; i < this.elements.length; i++) { if (this.elements[i].value == _value) { bln = true; } } } catch (e) { bln = false; } return bln; }; //获取MAP中所有VALUE的数组(ARRAY) this.values = function() { var arr = new Array(); for (i = 0; i < this.elements.length; i++) { arr.push(this.elements[i].value); } return arr; }; //获取MAP中所有KEY的数组(ARRAY) this.keys = function() { var arr = new Array(); for (i = 0; i < this.elements.length; i++) { arr.push(this.elements[i].key); } return arr; }; }
将地址栏中的字符转换成Map对应
/* * 使用方法 * * var aa="name=张三&age=13&sex=男"; * var map =stringToMap(aa); * alert(map.get("name")); alert(map.keys()); * ..... */ function stringToMap(str) { var map = new Map(); var arr = str.split("&"); for ( var i = 0; i < arr.length; i++) { var aa = arr[i].split("="); map.put(aa[0], aa[1]); } return map; }
相关推荐
自定义javascript的Map类,使用习惯完全依据于java的map使用习惯编写,java中map的用法基本一样,导入包即可使用
标题中的“gmap.rar_GMAP_javascript_map_map javascript_map offline”揭示了这个压缩包内容是关于Google Maps API的JavaScript版本,特别强调了可以离线使用的特性。这表明它可能包含了一套本地化的、用于在没有...
这篇文章将深入探讨这两个概念,以及如何在实际开发中使用它们。 首先,Array是JavaScript中最基础的数据结构之一,它允许我们存储一组有序的元素。数组支持索引访问,这意味着我们可以通过索引来获取或修改数组中...
- `size()`:返回Map中的元素数量。 - `isEmpty()`:判断Map是否为空。 - `clear()`:清空Map的所有元素。 - `put(key, value)`:向Map中添加或更新键值对。 - `remove(key)`:移除指定键的元素,并返回操作结果。 -...
在JavaScript中,`Map`是一种内置的数据结构,用于存储键值对。相比于对象,`Map`的优势在于它可以使用任何类型的值作为键,包括对象。在本文中,我们将深入探讨一种高性能的JavaScript `Map`实现,它基于JSON,具有...
* put(key, value) 向MAP中增加元素(key, value) * remove(key) 删除指定KEY的元素,成功返回True,失败返回False * get(key) 获取指定KEY的元素值VALUE,失败返回NULL * element(index) 获取指定索引的元素...
javascript Map原型,对象,实现javascript中的Map数据类型功能
在本项目中,“map-example.zip_html5_javascript_map”是一个包含使用HTML5和JavaScript实现的网页动态地图的压缩包。这个项目旨在展示如何利用这两种技术创建交互式地图应用,为用户提供丰富的地理信息可视化体验...
javascript实现map,极其方便,可在需要当前页处理多数据时使用
在JavaScript中,`forEach`和`map`是两种常见的数组迭代方法,它们允许开发者遍历数组的每一个元素。虽然它们有相似之处,但也有明显的差异,理解这些差异可以帮助我们更有效地编写代码。 首先,让我们来看一下`...
在JavaScript中,`Array.prototype.map()` 是一种非常实用的方法,用于创建一个新数组,其结果是调用提供的函数处理原数组的每一个元素。此方法不改变原数组,而是返回一个新的数组。 #### 二、基本用法与定义 `...
总结来说,JavaScript中的HashMap实现需要注意对象原型链的影响,使用`hasOwnProperty`来检查对象自身属性,以及通过创建无原型的裸对象来避免潜在问题。通过这种方式,可以创建一个更高效、更可控的键值对存储结构...
在JavaScript中,`Map`集合是一个内置的数据结构,用于存储键值对,它与对象不同,因为对象的键必须是字符串或符号,而`Map`则可以使用任何可哈希的值作为键。这篇博客文章可能探讨了如何通过自定义方式实现一个类似...
本文将详细介绍如何在JavaScript中使用`Map`进行添加、删除、修改等操作。 #### Map的基本概念 `Map`对象是一种可迭代的容器,能够存储任何类型的键值对,并保持键值对的原始插入顺序。`Map`对象提供了很多内置的...
在`map.js`文件中,可能会有对Map的实现或扩展,比如添加一个`forEach`方法遍历Map的所有键值对,或者一个`size`属性获取Map中的元素数量。 `object.js`文件可能包含与Object相关的辅助函数,比如深拷贝、属性检查...
接下来,我们将详细探讨`classMap`的使用、它的功能以及如何在JavaScript中实现类似的数据结构。 首先,`classMap`可能是一个自定义的数据类型,用于模拟Java或C#中的映射(Map)概念,它允许我们将一个特定的键...
1. **set(key, value)**:向Map中添加一个键值对。如果键已经存在,其对应的值会被更新。 2. **get(key)**:根据键获取值。如果键不存在,返回undefined。 3. **has(key)**:检查Map中是否存在指定的键。 4. **...
javascript map类。类中有相应demo,在javascript中实现Map的一个类,包括map中对应的一些数据结构相关算法。
在JavaScript中,虽然已经有了内置的`Map`,但理解其实现原理对我们学习和使用这个数据结构大有裨益。下面是一个简单的`Map`实现示例: ```javascript class SimpleMap { constructor() { this.store = []; } ...