国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 語言 > JavaScript > 正文

JS自定義對象實現Java中Map對象功能的方法

2024-05-06 16:14:53
字體:
來源:轉載
供稿:網友
這篇文章主要介紹了JS自定義對象實現Java中Map對象功能的方法,可實現類似Java中Map對象增刪改查等功能,具有一定參考借鑒價值,需要的朋友可以參考下
 

本文實例講述了JS自定義對象實現Java中Map對象功能的方法。分享給大家供大家參考。具體分析如下:

Java中有集合,Map等對象存儲工具類,這些對象使用簡易,但是在JavaScript中,你只能使用Array對象。

這里我創建一個自定義對象,這個對象內包含一個數組來存儲數據,數據對象是一個Key,可以實際存儲的內容!
 
這里Key,你要使用String類型,和Java一樣,你可以進行一些增加,刪除,修改,獲得的操作。

使用很簡單,我先把工具類給大家看下:

復制代碼代碼如下:
/** 
 * @version 1.0 
 * 用于實現頁面 Map 對象,Key只能是String,對象隨意 
 */  
var Map = function(){  
    this._entrys = new Array();  
      
    this.put = function(key, value){  
        if (key == null || key == undefined) {  
            return;  
        }  
        var index = this._getIndex(key);  
        if (index == -1) {  
            var entry = new Object();  
            entry.key = key;  
            entry.value = value;  
            this._entrys[this._entrys.length] = entry;  
        }else{  
            this._entrys[index].value = value;  
        }          
    };  
    this.get = function(key){  
        var index = this._getIndex(key);  
        return (index != -1) ? this._entrys[index].value : null;  
    };  
    this.remove = function(key){  
        var index = this._getIndex(key);  
        if (index != -1) {  
            this._entrys.splice(index, 1);  
        }  
    };  
    this.clear = function(){  
        this._entrys.length = 0;;  
    };  
    this.contains = function(key){  
        var index = this._getIndex(key);  
        return (index != -1) ? true : false;  
    };  
    this.getCount = function(){  
        return this._entrys.length;  
    };  
    this.getEntrys =  function(){  
        return this._entrys;  
    };  
   this._getIndex = function(key){  
        if (key == null || key == undefined) {  
            return -1;  
        }  
        var _length = this._entrys.length;  
        for (var i = 0; i < _length; i++) {  
            var entry = this._entrys[i];  
            if (entry == null || entry == undefined) {  
                continue;  
            }  
            if (entry.key === key) {//equal  
                return i;  
            }  
        }  
        return -1;  
    };  
}

 
如果你不懂Js中對象的創建等一些基礎知識,自己可以網上查一下。
復制代碼代碼如下:
// 自定義Map對象  
var map = new Map();  
map.put("a","a");  
alert(map.get("a"));  
map.put("a","b");  
alert(map.get("a"));

 
先彈出 a 后面彈出 b ,因為后面的會覆蓋前面的!

 

其他方法大家自己寫寫看!

希望本文所述對大家的javascript程序設計有所幫助。


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表

圖片精選

主站蜘蛛池模板: 石狮市| 治多县| 项城市| 达孜县| 鸡泽县| 宁河县| 基隆市| 洛浦县| 南宫市| 奉化市| 当雄县| 福海县| 江山市| 宁都县| 安宁市| 江都市| 崇明县| 利辛县| 米脂县| 临夏县| 榆中县| 渝北区| 桃江县| 枣阳市| 永康市| 鄂尔多斯市| 金阳县| 江都市| 昌宁县| 寿宁县| 宜宾市| 太湖县| 紫金县| 静海县| 广东省| 三江| 吴堡县| 汉川市| 稷山县| 仁布县| 古田县|