`
mtnt2008
  • 浏览: 362494 次
  • 性别: Icon_minigender_1
  • 来自: 北京
文章分类
社区版块
存档分类
最新评论

js中的map

 
阅读更多

 

看到网上很多的js的map实现,也自己实现了一个

 

// map实现
var map = new Object();
map.put = function (key,value){
	var s = "map." + key + ' = "' + value + '";';
	eval(s);
}
map.get = function(key){
	var v = eval("map." + key + ";");
	return v;
}

map.keySet = function(){
	var keySets = new Array();
	for(key in map){
		if(!(typeof(map[key])=="function")){
			keySets.push(key);
		}
	}
	return keySets;
}

/*
 * use example
 */
 /*
map.put("a","Tom");
map.put("b","Nick");
var keys = map.keySet();
for(i in keys){
    key = keys[i];
    alert("key:" + key + "  value:" + map.get(key));
}
* /
/*
 * end example
 */
 

现在,看到了关联数组,可以这用才模拟map

 

var map = {};

// put
var key = "key1";
var value = "value1";
map[key] = value;

// get
alert(map[key]);

if("key1" in map) { //判断是否存在
  alert("OK");
}

// 删除
delete map["key1"]; 

// 遍历
for(key in map){
    alert(key + map[key]);
}
 

还是这个好用!

 

原理:

 

Array本来就是一个 hashmap

 

分享到:
评论
2 楼 GreatCoder 2014-07-24  
1 楼 heartofthesea 2012-10-30  
试试

相关推荐

    js中Map应用

    js中map应用 添加 删除 修改 等等

    js-map js-map

    js map js map js map js map js map js map

    js模拟list和map

    javascript 模拟 java中的 List,Map js文件为 js/utils.js IE6.0 测试通过 <br>List: add(var obj) //添加一个元素 remove(var index) //删除一个元素 get(var index) //获取一个元素 remove...

    javascript 中Map的使用

    NULL 博文链接:https://xiaojin21cen.iteye.com/blog/1924165

    popper.min.js.map

    包含:popper.min.js.map、popper.min.js....其实可以直接输入网址<script src="https://cdn.staticfile.org/popper.js/1.15.0/umd/popper.min.js"></script> 中的网址另存为,或者直接复制网页代码另存为,map文件就是...

    js 实现map的方式

    js Map 对象,js map ,map ,键值对

    利用js实现Map

    里面包含两个实例,js实现map的相关功能

    js中使用map形式存取遍历

    js中使用map形式存取遍历

    理解javascript中Map代替循环

    主要帮助大家理解javascript中Map代替循环,感兴趣的小伙伴们可以参考一下

    js自定义map集合

    由于原本把需要的数据存放到cookie中,但是cookie不能的key不能自动转译中文,出现乱码,后台服务器报错:Control character in cookie value or attribute.所以改为自定义map集合

    js Map对象封装

    js Map对象封装 和 java 的使用方法一样.

    自定义javascript的Map类

    自定义javascript的Map类,使用习惯完全依据于java的map使用习惯编写,java中map的用法基本一样,导入包即可使用

    javascript(map功能)

    * put(key, value) 向MAP中增加元素(key, value) * remove(key) 删除指定KEY的元素,成功返回True,失败返回False * get(key) 获取指定KEY的元素值VALUE,失败返回NULL * element(index) 获取指定索引的元素...

    使用js实现map功能

    使用js实现map工具类

    js遍历map javaScript遍历map的简单实现

    js遍历map javaScript遍历map的简单实现 var map = { "name" : "华仔", "realname":"刘德华" }; for (var key in map) { console.log("map["+key+"]"+map[key]); } 这样会把map给遍历掉,显示在浏览器上的...

    js中遍历Map对象的方法

    js中遍历Map对象的方法 console.log(jsonData);//火狐控制台打印输出: Object { fileNumber="文件编号", fileName="文件名称"} for(var key in jsonData) console.log("属性:" + key + ",值:"+ jsonData[key]);...

    js中的类似于java中的map工具对象Map.js

    js终于有了自己的Map了,类似与java的Map对象。此文件是源代码,亲测有类似于java的Map对象的类似方法:put(key,value)、get(key)、keys()、values()、size()、isEmpty()、remove(key)、clear()、element(index)、...

    用js实现map功能

    * Map对象,实现map功能 * put(key, value) 向map中增加键值对 * 例子: * var map = new Map(); * * map.put("key", "value"); * var val = map.get("key");

    JS中Map和ForEach的区别

    本篇文章给大家详细分析了JS中Map和ForEach的区别以及用法上的不同之处,对此有兴趣的朋友参考学习下吧。

Global site tag (gtag.js) - Google Analytics