• 用html自制map集合


    懂java的人都知道map集合,是一个非常好用的集合类,它以键值对方式存储,和我们js的json记为相似,但是json添加,查找极为不便。那还不如自己用js制定一个json

      function Map() {
                    /** 存放键的数组(遍历用到) */
                    this.keys = new Array()
                    /** 存放数据 */
                    this.data = new Object();
    
                    /**
                     * 放入一个键值对
                     * @param {String} key
                     * @param {Object} value
                     */
                    this.put = function(key, value) {
                        if(this.data[key] == null){
                            this.keys.push(key);
                        }
                        this.data[key] = value;
                    };
    
                    /**
                     * 获取某键对应的值
                     * @param {String} key
                     * @return {Object} value
                     */
                    this.get = function(key) {
                        return this.data[key];
                    };
    
                    /**
                     * 删除一个键值对
                     * @param {String} key
                     */
                    this.remove = function(key) {
                        this.keys.remove(key);
                        this.data[key] = null;
                    };
    
                    /**
                     * 遍历Map,执行处理函数
                     *
                     * @param {Function} 回调函数 function(key,value,index){..}
                     */
                    this.each = function(fn){
                        if(typeof fn != 'function'){
                            return;
                        }
                        var len = this.keys.length;
                        for(var i=0;i<len;i++){
                            var k = this.keys[i];
                            fn(k,this.data[k],i);
                        }
                    };
    
                    /**
                     * 获取键值数组(类似Java的entrySet())
                     * @return 键值对象{key,value}的数组
                     */
                    this.entrys = function() {
                        var len = this.keys.length;
                        var entrys = new Array(len);
                        for (var i = 0; i < len; i++) {
                            entrys[i] = {
                                key : this.keys[i],
                                value : this.data[i]
                            };
                        }
                        return entrys;
                    };
    
                    /**
                     * 判断Map是否为空
                     */
                    this.isEmpty = function() {
                        return this.keys.length == 0;
                    };
    
                    /**
                     * 获取键值对数量
                     */
                    this.size = function(){
                        return this.keys.length;
                    };
    
                    /**
                     * 重写toString
                     */
                    this.toString = function(){
                        var s = "{";
                        for(var i=0;i<this.keys.length;i++,s+=','){
                            var k = this.keys[i];
                            s += k+"="+this.data[k];
                        }
                        s+="}";
                        return s;
                    };
                }

      使用:

     var map;
                $(function(){
                    map = new Map();
                     map.put("redirecturl",redire);
                //    map.put("appId",app);
    }
  • 相关阅读:
    HUB_mysql学习笔记
    SQL学习笔记
    java_cmd_命令行
    JavaScript_2016_8_28
    linux mysql 安装配置
    solr 添加索引
    solr 查询 实例分析
    solr update接口常用方法
    solr schema.xml文档节点配置
    solr4.5安装配置 linux+tomcat6.0+mmseg4j-1.9.1分词
  • 原文地址:https://www.cnblogs.com/sanhuan/p/4610864.html
Copyright © 2020-2023  润新知