javacript模拟map输出与去除重复项

页面导航:首页 > 网络编程 > JavaScript > javacript模拟map输出与去除重复项

javacript模拟map输出与去除重复项

来源: 作者: 时间:2016-02-03 09:20 【

1 Javascriptmap输出 function Map(){ private var obj = {} ; 空的对象容器,承装键值对 put 方法this put = function(key , val

1.scriptmap输出

                         function Map(){
					
					// private 
					var obj = {} ;// 空的对象容器,承装键值对
					
					// put 方法
					this.put = function(key , value){
							obj[key] = value ;		// 把键值对绑定到obj对象上
					}
					
					// size 方法 获得map容器的个数
					this.size = function(){
							var count = 0 ; 
							for(var attr in obj){
								count++;
							}
							return count ; 
					}
					
					// get 方法 根据key 取得value
					this.get = function(key){
						if(obj[key] || obj[key] === 0 || obj[key] === false){
							return obj[key];
						} else {
							return null;
						}
					}
					
					//remove 删除方法
					this.remove = function(key){
						if(obj[key] || obj[key] === 0 || obj[key] === false){
							delete obj[key];						
						}
					}
					
					// eachMap 变量map容器的方法
					this.eachMap = function(fn){
							for(var attr in obj){
								fn(attr, obj[attr]);
							}
					}
					
					
				}
			
				//模拟java里的Map
				var m = new  Map();
				m.put('01' , 'abc');
				m.put('02' , false) ;
				m.put('03' , true);
				m.put('04' , new Date());
				
				//alert(m.size());
				
				//alert(m.get('02'));
				//m.remove('03');
				//alert(m.get('03'));
				
				m.eachMap(function(key , value){
					 alert(key +" :"+ value);
			});
2.去除map中重复项

var arr = [2,1,2,10,2,3,5,5,1,10,13];	//object
			
			
			// js对象的特性 : 在js对象中 key 是永远不会重复的 
			/*
			var obj = new Object();
			obj.name = 'z3';
			obj.age = 20 ;
			//alert(obj.name);
			obj.name = 'w5';
			alert(obj.name);
			*/
			
			// 1 把数组转成一个js的对象
			// 2 把数组中的值,变成js对象当中的key
			// 3 把这个对象 再还原成数组
			
			// 把数组转成对象
			function toObject(arr){
				var obj = {} ; // 私有的对象
				var j ;
				for(var i=0 , j= arr.length ; i

Tags:

相关文章

    文章评论

    最 近 更 新
    热 点 排 行
    Js与CSS工具
    代码转换工具
    
    <