2025-02-17

 

HashMap在程序設計中,具有無可替代的重要作用。它提供m.put(key,value); m.get(key);之類的數據存儲及讀取方式,非常方便。但在JavaScript(HTML4.0的版本) 中,並沒有提供這樣的一種對象。以下這段代碼用於創建Map對象,我已使用多年,效果良好,供需要的朋友參考。

 

 

 

一、Map源代碼

 

 

    /**  Map is a general map object for storing key value pairs

     *  @param m – default set of properties

     */

var Map =function(m) {

        var map;

        if (typeof m == 'undefined') map = new Array();

        else map = m;

       

        /**

         * Get a list of the keys to check

         */

        this.keys = function() {

            var _keys = new Array();

            for (var _i in map){

                _keys.push(_i);

            }

            return _keys;//

        };

        /**

         * Put stores the value in the table

         * @param key the index in the table where the value will be stored

         * @param value the value to be stored

         */

        this.put = function(key,value) {

            map[key] = value;

        };

        /**

         * Return the value stored in the table

         * @param key the index of the value to retrieve

         */

        this.get = function(key) {

            return map[key];

        };

        /**

         * Remove the value from the table

         * @param key the index of the value to be removed

         */

        this.remove =  function(key) {

            map[key]=null;

            delete map[key];

        };

        /**

         *  Clear the table

         */

        this.clear = function() {

            delete map;

            map = new Array();

        };

    }

 

 

 

二、創建Map對象

 

var m=new Map();

 

m.put("id","1000");

 

m.put("name","張三");

 

 

 

三、運用 www.aiwalls.com

 

<p id="testMap"'></p>

 

 <script type='text/javascript'>

 

      document.getElementById("testMap").innerHTML=m.get("name");

 

 </script>

 

摘自wj800的專欄

發佈留言

發佈留言必須填寫的電子郵件地址不會公開。 必填欄位標示為 *