`
xzs603
  • 浏览: 32846 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
社区版块
存档分类
最新评论

js_map

阅读更多

javascript实现Map。。

/**
* Make a map like java.
* You can use this map like this : 
* var myMap = new Map();
* myMap.put("key","value");
* var key = myMap.get("key");
*/
function Map() {

	this.elements = new Array();

	this.size = function() {
		return this.elements.length;
	}

	this.isEmpty = function() {
		return (this.elements.length < 1);
	}

	this.clear = function() {
		this.elements = new Array();
	}

	this.put = function(_key, _value) {
		this.elements.push({key:_key, value:_value});
	}

	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;
	}

	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;
		}
	}

	this.element = function(_index) {
		if (_index < 0 || _index >= this.elements.length) {
			return null;
		}
		return this.elements[_index];
	}

	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;
	}

	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;
	}

	this.values = function() {
		var arr = new Array();
		for (i = 0; i < this.elements.length; i++) {
			arr.push(this.elements[i].value);
		}
		return arr;
	}

	this.keys = function() {
		var arr = new Array();
		for (i = 0; i < this.elements.length; i++) {
			arr.push(this.elements[i].key);
		}
		return arr;
	}
} 

 

分享到:
评论
1 楼 nanquan 2009-05-16  
Map 最主要的就是key唯一 put方法应做下判断

相关推荐

    gmap.rar_GMAP_javascript_map_map javascript_map offline

    标题中的“gmap.rar_GMAP_javascript_map_map javascript_map offline”揭示了这个压缩包内容是关于Google Maps API的JavaScript版本,特别强调了可以离线使用的特性。这表明它可能包含了一套本地化的、用于在没有...

    map-example.zip_html5_javascript_map

    “map_demo”很可能是一个HTML文件或者JavaScript文件,它是实际地图应用的示例。如果是HTML文件,它可能包含了HTML5的`&lt;canvas&gt;`元素和必要的JavaScript脚本。如果是JavaScript文件,它可能包含了地图初始化、事件...

    map(java).rar_ map ja_MAP JAVA_java map_java系统_map

    标题中的"map(java).rar_ map ja_MAP JAVA_java map_java系统_map"暗示了这是一个与Java编程语言相关的项目,特别是涉及到地图(Map)的实现。在Java中,`Map`是一个接口,它定义了键值对的数据结构,允许我们通过键...

    JS.CSS.map.instance.hyperlink.rar_css Map_js 地图_js map实例_js 地图_

    本文将深入探讨“JS.CSS.map.instance.hyperlink.rar”压缩包中的“CSS Map_js”和“js_map实例”,以及它们如何实现地图功能,特别是与超链接结合的经典案例。 首先,我们来理解CSS Map。CSS(Cascading Style ...

    Test_Map.zip

    此外,为了便于数据的互操作性,地图数据通常遵循OGC(Open Geospatial Consortium,开放地理空间联盟)制定的标准,如GML(Geography Markup Language)或JSON-LD(JavaScript Object Notation for Linked Data)。...

    china_svg_map_js

    【标题】"china_svg_map_js" 是一个与地图相关的JavaScript项目,主要目的是在网页上展示中国地图,并且可能具有交互性。从文件名来看,它使用SVG(Scalable Vector Graphics)格式来绘制地图,SVG是一种基于XML的...

    echarts_world_js.zip_echarts_echarts world_map_world_world.js 下载

    在这个场景下,"echarts_world_js.zip"是一个压缩包,包含了ECharts世界地图相关的JavaScript资源,特别是文件"world.js",它可能包含了世界地图的配置数据和绘制逻辑。 "world.js"文件在ECharts世界地图中扮演着...

    Python库 | datasette_cluster_map-0.17-py3-none-any.whl

    在实际应用中,`datasette_cluster_map`库通过集成Leaflet.js,一个流行的JavaScript库,来实现地图的展示。Leaflet.js以其轻量级、易用性和良好的性能而著称,能很好地支持地图的缩放、平移等操作,并且提供了丰富...

    Google_map_JavaScript_API_V3

    **谷歌地图JavaScript API V3详解** 谷歌地图JavaScript API V3是谷歌提供的用于在网页中集成交互式地图的服务。这个API允许开发者通过JavaScript编程语言来控制和定制地图的显示、添加标记、绘制形状、处理事件...

    PyPI 官网下载 | datasette_cluster_map-0.7-py3-none-any.whl

    这个库可能涉及到的技术包括地理信息系统(GIS)、地图API(如Google Maps或Leaflet)、JavaScript库(如D3.js或Mapbox GL JS),以及可能的Web框架如Flask或Django。 为了充分利用datasette_cluster_map,开发者...

    js_map-of-people

    在JavaScript的世界里,"js_map-of-people" 这个标题可能是指一个项目或库,它专注于处理和操作与人相关的数据。这个项目可能提供了一种高效的方式来存储、检索和管理人员信息,就像地图帮助我们定位和理解地理空间...

    baidu_offline_map-master.zip

    首先,Vue.js是一个轻量级的前端JavaScript框架,以其易学易用、灵活性高和强大的功能而受到开发者喜爱。它采用声明式编程,使得构建用户界面变得更加简洁。在"baidu_offline_map-master"项目中,Vue.js将用于构建...

    ka-map-1.0-20070205.tar.gz_mapserver_php map_php mapserver

    通过Ajax(Asynchronous JavaScript and XML)技术,Ka-Map实现了无需刷新页面即可动态更新地图的效果,极大地提升了用户体验。用户可以通过简单的点击和滚动操作来探索地图,同时,其可定制的界面和丰富的API使得...

    baidu_map_demo

    "baidu_map_trans_demo.html"可能是包含地图展示和坐标转换示例的HTML页面,"baidu_map_demo.html"可能是另一个演示如何使用百度地图API的基本示例,而"convertor.js"很可能是实现坐标转换逻辑的JavaScript文件。...

    china_map_v1.0.zip

    - "china_map.js"中的代码会解析"map_json"中的地理数据,将数据映射到地图上。 - 当用户点击地图上的省份或城市时,触发预先设定的交互事件,实现地图的动态切换或数据展示。 总的来说,"china_map_v1.0.zip...

    Map地图软件_地图_高德地图_C#高德地图_map_高德云图非法_

    总结来说,C# Web高德Map地图软件开发涉及到C#与JavaScript的交互、高德地图API的调用以及地图功能的实现。开发者需要理解这些关键技术点,并确保在合法的范围内使用地图服务,以构建高效、合规的应用程序。

    baidu_map_demo.rar

    【标题】"baidu_map_demo.rar" 是一个包含使用百度地图API实现的示例应用,主要功能是查询和展示特定地点附近的设施,如银行、公交站、医院、购物中心和学校等。这个压缩包包含了实现这一功能所需的所有核心文件。 ...

    arcgis_js_api_3.19调试好的arcgis接口

    var layer_map,visible = []; [removed] [removed][removed] [removed][removed] [removed][removed] &lt;link rel="stylesheet" type="text/css" href="arcgis_js_api_3.19/library/3.19/3.19/dijit/...

    json.rar_json js_json map

    在描述中提到的“装载到map集合中”,Map是JavaScript的一个内置对象,它存储键值对,其中键可以是任何类型,而不仅仅是字符串。与对象不同,Map的键的顺序是保留的,这意味着它们可以按照添加的顺序进行迭代。将...

    Selenium_API_map

    - JavaScript 执行命令:如`runScript`, `eval`,用于执行自定义的JavaScript代码。 2. **Selenium-RC 的工作原理** Selenium-RC 在服务器端运行一个JavaScript库,该库注入到被测网页中,使得测试脚本可以通过...

Global site tag (gtag.js) - Google Analytics