zoukankan      html  css  js  c++  java
  • js模拟map集合

    /** Map 用法.           //AM805 s
    *  var map = new Map();
    * map.put(" /. ][>?,国a", "aaa");
    * map.put("b","bbb");
    * map.put("cc","cccc");
    * map.put("'/doc/xab[2]/test[1]'","ccc");
    * map.remove("cc");
    * var array = map.keySet();
    * for(var i in array) {
    * document.write("key:(" + array[i] +") <br>value: ("+map.get(array[i])+") <br>");
    * }
    */
    
    /**
    * Map的构造函数
    */
    function Map(){
        this.container = new Object();
    }
    
    /**
    * 添加一个键-值
    */
    Map.prototype.put = function(key, value){
        this.container[key] = value;
    }
    
    /**
    * 通过键获取一个值
    */
    Map.prototype.get = function(key){
        return this.container[key];
    }
    
    /**
    * 返回该Map对象的键集合
    */
    Map.prototype.keySet = function() {
        var keyset = new Array();
        var count = 0;
        for (var key in this.container) {
            // 跳过object的extend函数
            if (key == 'extend') {
                continue;
            }
            keyset[count] = key;
            count++;
        }
        return keyset;
    }
    
    /**
    * 返回该Map对象的大小
    */
    Map.prototype.size = function() {
        var count = 0;
        for (var key in this.container) {
            // 跳过object的extend函数
            if (key == 'extend'){
            continue;
            }
            count++;
        }
        return count;
    }
    
    /**
    * 删除Map对象
    */
    Map.prototype.remove = function(key) {
    delete this.container[key];
    }
    
    /**
    * 返回该Map对象的字符串形式
    */
    Map.prototype.toString = function(){
        var str = "";
        for (var i = 0, keys = this.keySet(), len = keys.length; i < len; i++) {
            str = str + keys[i] + "=" + this.container[keys[i]] + ";
    ";
        }
        return str;
    }
  • 相关阅读:
    最快速度找到内存泄漏
    PostMessage与SendMessage各自的问题
    分享一个javascript alert精简框架
    SendMessage、PostMessage原理
    八款常用的 Python GUI 开发框架推荐
    大学学物理将来到底能干什么?
    私有虚函数的特点(C++和Java的机制还有所不同)
    BS与CS的比较
    Eclipse代码自动提示设置
    打印TMemo的内容到打印机
  • 原文地址:https://www.cnblogs.com/gavenQin/p/5577447.html
Copyright © 2011-2022 走看看