<script type="text/javascript"><!--
/**
* @author: kalogen
* @date: 2011-1-8
* map对象类,提供了put,get,remove,size,isEmpty等方法
*/
function Map() {
/**
* 构造函数
* @param {} key
* @param {} value
*/
var struct = function(key, value) {
this.key = key;
this.value = value;
}
/**
* 添加key对应的值,如果key已经存在则直接更新对应的值
* @param {} key
* @param {} value
*/
var put = function(key, value) {
for (var i = 0; i < this.arr.length; i++) {
if (this.arr[i].key === key) {
this.arr[i].value = value;
return;
}
}
this.arr[this.arr.length] = new struct(key, value);
}
/**
* 获取key对应的值
* @param {} key
* @return {}
*/
var get = function(key) {
for (var i = 0; i < this.arr.length; i++) {
if (this.arr[i].key === key) {
return this.arr[i].value;
}
}
return null;
}
/**
* 移除key对应的值
* @param {} key
*/
var remove = function(key) {
var v;
for (var i = 0; i < this.arr.length; i++) {
v = this.arr.pop();
if (v.key === key) {
continue;
}
this.arr.unshift(v);
}
}
/**
* 获取map对象的长度
* @return {}
*/
var size = function() {
return this.arr.length;
}
/**
* 判断map对象是否为空
* @return {}
*/
var isEmpty = function() {
return this.arr.length <= 0;
}
this.arr = new Array();
this.get = get;
this.put = put;
this.remove = remove;
this.size = size;
this.isEmpty = isEmpty;
}
// -->
</script>
<script type="text/javascript"><!--
var map = new Map();
map.put("re","redhacker");
map.put("do","douguoqiang");
map.put("gq","dougq");
alert("map的大小为:" + map.size())
alert("key为re的map中存储的对象为:" + map.get("do"));
map.remove("re");
alert("移除key为re的对象后,获取key为re的map中存储的对象为:" + map.get("do"));
alert("map移除一个元素后的大小为:" + map.size());
alert("map是否是一个空map:" + map.isEmpty());
// -->
</script>
分享到:
相关推荐
JavaScript中的Map对象是一种数据结构,它允许我们存储键值对,并且键可以是...通过分析和理解`jsMap.js`的代码,你可以深入理解Map对象的用法和其在实际开发中的应用场景,如存储和查找关联数据、处理复杂数据结构等。
`object.js` 文件可能涉及到的是JavaScript对象的操作,虽然不是直接与Array或Map相关,但它们在JavaScript中是重要的数据结构。JavaScript对象是一种键值对的集合,键通常是字符串,但也可以是符号(Symbol)。与...
**JavaScript Map对象详解与实践应用** 在JavaScript的世界里,`Map`对象是一个强大的数据结构,它允许我们存储键值对,且键可以是任意类型,而不仅仅是字符串。这与原生的`Object`有着本质的区别,`Object`的键...
JavaScript中的Map对象是ES6引入的一种新的数据结构,它提供了键值对的存储方式,与对象类似但有显著区别。Map的主要优势在于键可以是任意类型,而不仅仅是字符串,这使得它在处理复杂数据结构时非常有用。在本文中...
本篇文章将深入探讨`Map`的JS实现,并通过提供的`map.js`文件来理解其内部工作原理。 `Map`对象的主要特性包括: 1. **键的多样性**:与对象的键必须是字符串或符号不同,`Map`的键可以是任何JavaScript值。 2. **...
在`map.js`文件中,可能会有对Map的实现或扩展,比如添加一个`forEach`方法遍历Map的所有键值对,或者一个`size`属性获取Map中的元素数量。 `object.js`文件可能包含与Object相关的辅助函数,比如深拷贝、属性检查...
在JavaScript中,尽管原生没有提供与Java完全相同的Map对象,但可以通过自定义对象或使用ES6提供的Map数据结构来实现类似的功能。本篇将详细探讨如何在JavaScript中模仿Java的Map对象,以及ES6 Map的数据结构和用法...
map转json
本实例将通过代码示例来演示如何在JavaScript中对Map对象进行遍历。 在遍历Map对象之前,我们需要先了解如何创建一个Map实例。可以使用Map构造函数,并且将键值对数组作为参数传递给它来创建一个新的Map对象。例如...
本文实例讲述了JS自定义对象实现Java中Map对象功能的方法。分享给大家供大家参考。具体分析如下: Java中有集合,Map等对象存储工具类,这些对象使用简易,但是在JavaScript中,你只能使用Array对象。 这里我创建一...
JavaScript中的Map对象是一种存储键值对的集合,其中的键可以是任何数据类型。Map对象提供了一些内置的方法来进行操作,包括遍历。遍历Map对象是一种常用的操作,它允许开发者访问Map中的每个键值对。以下是在...
标题中提到的“js遍历map javaScript遍历map的简单实现”指的是如何在JavaScript中简单实现对Map对象的遍历。在JavaScript中,Map对象是一种存储键值对的结构,类似于Object,但是主要区别在于Map允许任何类型的值...
在JavaScript中,`Map`集合是一个内置的数据结构,用于存储键值对,它与对象不同,因为对象的键必须是字符串或符号,而`Map`则可以使用任何可哈希的值作为键。这篇博客文章可能探讨了如何通过自定义方式实现一个类似...
在JavaScript中,`Map`对象是一种内置的数据结构,它保存键值对,并且可以按插入顺序记住元素。与普通的JavaScript对象不同的是,`Map`的键可以是任何类型的值(不仅仅是字符串或符号)。本文将详细介绍如何在...
在JavaScript的ES6版本中引入了Map对象,以弥补对象作为哈希表的一些不足,如对象的键总是字符串或者Symbol类型。本文将深入探讨如何使用JavaScript实现Map,以及它的特性和优势。 首先,创建一个Map对象非常简单,...
在JavaScript中,Map数据结构是一种用于存储键值对的数据...在某些情况下,使用原生的JavaScript Map对象可能是更合适的选择,因为它提供了完整的ECMAScript标准支持,并且在现代浏览器和Node.js环境中具有良好的性能。
在Java编程环境中,有时我们需要与JavaScript交互,例如执行一些动态脚本...开发者可以轻松地在Java程序中执行JavaScript代码,调用JavaScript函数,甚至传递Java对象到JavaScript环境,从而实现两者之间的协同工作。
在JavaScript的世界里,`Map`对象是一个非常重要的数据结构,它允许我们存储键值对,其中键可以是任何类型的...在阅读`MapUtil.js`源码时,可以关注这些方法的实现细节,理解它们如何优化和扩展了原生`Map`对象的能力。
在这个"javascript 核心对象代码"的资料中,我们将会深入探讨JavaScript的核心对象,包括它们的用途、工作原理以及如何在实际编程中应用。 1. **全局对象**:全局对象是JavaScript中的一个重要概念,它包含了所有...