/**
* js实现的map
* Author:penghuaiyi
* Date:2009-06-04
*/
//定义map
function Map()
{
this.container = {};
}
//将key-value放入map中
Map.prototype.put = function(key,value){
try{
if(key!=null && key != "")
this.container[key] = value;
}catch(e){
return e;
}
};
//根据key从map中取出对应的value
Map.prototype.get = function(key){
try{
return this.container[key];
}catch(e){
return e;
}
};
//判断map中是否包含指定的key
Map.prototype.containsKey=function(key){
try{
for(var p in this.container)
{
if(this.p==key)
return true;
}
return false;
}catch(e){
return e;
}
}
//判断map中是否包含指定的value
Map.prototype.containsValue = function(value){
try{
for(var p in this.container)
{
if(this.container[p] === value)
return true;
}
return false;
}catch(e){
return e;
}
};
//删除map中指定的key
Map.prototype.remove = function(key){
try{
delete this.container[key];
}catch(e){
return e;
}
};
//清空map
Map.prototype.clear = function(){
try{
delete this.container;
this.container = {};
}catch(e){
return e;
}
};
//判断map是否为空
Map.prototype.isEmpty = function(){
if(this.keyArray().length==0)
return true;
else
return false;
};
//获取map的大小
Map.prototype.size=function(){
return this.keyArray().length;
}
//返回map中的key值数组
Map.prototype.keyArray=function(){
var keys=new Array();
for(var p in this.container)
{
keys.push(p);
}
return keys;
}
//返回map中的value值数组
Map.prototype.valueArray=function(){
var values=new Array();
var keys=this.keyArray();
for(var i=0;i<keys.length;i++)
{
values.push(this.container[keys[i]]);
}
return values;
}
分享到:
相关推荐
JavaScript中的Map对象是一种数据结构,它允许我们存储键值对,并且键可以是任何类型,而不仅仅是字符串。Map对象在JavaScript ES6版本中被引入,为处理复杂的数据关联提供了更强大的工具,尤其对于那些需要使用非...
使用js实现map工具类
本文将深入探讨`Map`对象的原理、特性以及如何通过JavaScript实现`Map`的相关功能,并通过实例进行演示。 ### 1. Map的基本用法 创建一个`Map`对象非常简单,可以通过传入一个数组的数组来初始化,每个内部数组...
javascript实现map,极其方便,可在需要当前页处理多数据时使用
JavaScript中的Map对象是ES6引入的一种新的数据结构,它提供了键值对的存储方式,与对象类似但有显著区别。Map的主要优势在于键可以是任意类型,而不仅仅是字符串,这使得它在处理复杂数据结构时非常有用。在本文中...
* Map对象,实现map功能 * put(key, value) 向map中增加键值对 * 例子: * var map = new Map(); * * map.put("key", "value"); * var val = map.get("key");
`object.js` 文件可能涉及到的是JavaScript对象的操作,虽然不是直接与Array或Map相关,但它们在JavaScript中是重要的数据结构。JavaScript对象是一种键值对的集合,键通常是字符串,但也可以是符号(Symbol)。与...
javascript 模拟 java中的 List,Map js文件为 js/utils.js IE6.0 测试通过 <br>List: add(var obj) //添加一个元素 remove(var index) //删除一个元素 get(var index) //获取一个元素 remove...
本文将深入探讨如何使用JavaScript实现Map,以及它的特性和优势。 首先,创建一个Map对象非常简单,可以通过调用Map构造函数并传入可迭代对象(如数组)来初始化: ```javascript let map = new Map([[1, 'one'], ...
在`map.js`文件中,可能会有对Map的实现或扩展,比如添加一个`forEach`方法遍历Map的所有键值对,或者一个`size`属性获取Map中的元素数量。 `object.js`文件可能包含与Object相关的辅助函数,比如深拷贝、属性检查...
本篇文章将深入探讨`Map`的JS实现,并通过提供的`map.js`文件来理解其内部工作原理。 `Map`对象的主要特性包括: 1. **键的多样性**:与对象的键必须是字符串或符号不同,`Map`的键可以是任何JavaScript值。 2. **...
在本文中,我们将深入探讨一种高性能的JavaScript `Map`实现,它基于JSON,具有出色的稳定性和更高的容量。 首先,我们来看传统的JavaScript `Map`。原生的`Map`提供了如`set`、`get`、`delete`、`has`等方法,便于...
部分IE浏览器不支持ecmascript 6,无法使用map对象,用原生js对象实现map功能
### 在JavaScript中实现Map对象 #### 一、引言 在JavaScript中,原生支持了多种数据结构,其中数组(Array)是最为常见的数据结构之一。然而,在某些应用场景下,我们可能需要一种能够根据键(key)快速查找值(value)的...
通过JS的使用,实现类似于JAVA中Map的操作
在这个"Java实现Map集合二级联动示例中国省市例子"中,我们将探讨如何使用Map来构建一个二级联动的功能,常见于如中国省市选择的场景。这个场景通常出现在需要用户首先选择省份,然后根据所选省份展示对应的市的选择...
**自定义实现Map的思路** 1. **数据结构**:首先,我们需要一个数据结构来存储键值对,可以使用数组或对象。数组可以按照特定格式(如[key, value])存储,而对象则需要处理键的唯一性。 2. **size属性**:维护一...
### JavaScript中的Map应用 在JavaScript中,`Map`对象是一种内置的数据结构,它保存键值对,并且可以按插入顺序记住元素。与普通的JavaScript对象不同的是,`Map`的键可以是任何类型的值(不仅仅是字符串或符号)...
前几天项目上想用map集合一样的东西,简单拿对象拼了一下子,今天闲的慌实现一下 大家不要见笑 代码 var Map = function (){ /************基础变量**************/ var hashmap = {}; var keys = []; var vals...
主要介绍了JavaScript中利用Array和Object实现Map的方法,实例分析了javascript实现map的添加、获取、移除、清空、遍历等操作技巧,具有一定参考借鉴价值,需要的朋友可以参考下