您的位置:首页 > Web前端 > JavaScript

js 创建hashmap

2015-06-18 17:34 676 查看
//工具   ---  hashMap

function HashMap(){  

    //定义长度   

    var length = 0;  

    //创建一个对象   

    var obj = new Object();  

  

    /** 

    * 判断Map是否为空 

    */  

    this.isEmpty = function(){  

        return length == 0;  

    };  

  

    /** 

    * 判断对象中是否包含给定Key 

    */  

    this.containsKey=function(key){  

        return (key in obj);  

    };  

  

    /** 

    * 判断对象中是否包含给定的Value 

    */  

    this.containsValue=function(value){  

        for(var key in obj){  

            if(obj[key] == value){  

                return true;  

            }  

        }  

        return false;  

    };  

  

    /** 

    *向map中添加数据 

    */  

    this.put=function(key,value){  

        if(!this.containsKey(key)){  

            length++;  

        }  

        obj[key] = value;  

    };  

  

    /** 

    * 根据给定的Key获得Value 

    */  

    this.get=function(key){  

        return this.containsKey(key)?obj[key]:null;  

    };  

  

    /** 

    * 根据给定的Key删除一个值 

    */  

    this.remove=function(key){  

        if(this.containsKey(key)&&(delete obj[key])){  

            length--;  

        }  

    };  

  

    /** 

    * 获得Map中的所有Value 

    */  

    this.values=function(){  

        var _values= new Array();  

        for(var key in obj){  

            _values.push(obj[key]);  

        }  

        return _values;  

    };  

  

    /** 

    * 获得Map中的所有Key 

    */  

    this.keySet=function(){  

        var _keys = new Array();  

        for(var key in obj){  

            _keys.push(key);  

        }  

        return _keys;  

    };  

  

    /** 

    * 获得Map的长度 

    */  

    this.size = function(){  

        return length;  

    };  

  

    /** 

    * 清空Map 

    */  

    this.clear = function(){  

        length = 0;  

        obj = new Object();  

    };  



function getmonth(month){

 var map = new HashMap();

 map.put("jan","01");

 map.put("Feb","02");

 map.put("Mar","03");

 map.put("Apr","04");

 map.put("May","05");

 map.put("Jun","06");

 map.put("Jul","07");

 map.put("Aug","08");

 map.put("Spt","09");

 map.put("Oct","10");

 map.put("Nov","11");

 map.put("Dec","12");

 

 return map.get(month);

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息