ホームページ  >  記事  >  ウェブフロントエンド  >  javascript_javascript スキルによって実装された HashMap クラス コード

javascript_javascript スキルによって実装された HashMap クラス コード

WBOY
WBOYオリジナル
2016-05-16 16:42:551739ブラウズ

复制代 代码如下:

<スクリプト言語 = "javascript" >
関数 HashMap() {
    /**マップサイズ**/
    var サイズ = 0;
    /**物体**/
    var エントリ = 新しいオブジェクト();
    /**地図保管場所の置き方※*/
    this.put = function(key, value) {
        if (!this.containsKey(key)) {
            サイズ ;
            エントリ[キー] = 値;
        }
    }
    /**マップ取得メソッド**/
    this.get = function(key) {
        this.containsKey(key) を返しますか?エントリ[キー] : null;
    }
    /**マップの削除削除方法**/
    this.remove = function(key) {
        if (this.containsKey(key) && (エントリ[key]を削除)) {
            サイズ--;
        }
    }
    /**Key*を含めるかどうか*/
    this.containsKey = function(key) {
        return (キー入力);
    }
    /**値を含めるかどうか**/
    this.containsValue = 関数(値) {
        for (エントリの var prop) {
            if (entry[prop] == value) {
                true を返します;
            }
        }
        false を返します;
    }
    /**すべての値**/
    this.values = function() {
        var 値 = new Array();
        for (エントリの var prop) {
            value.push(entry[prop]);
        }
        戻り値;
    }
    /**すべてのキー**/
    this.keys = function() {
        var key = new Array();
        for (エントリの var prop) {
            key.push(prop);
        }
        リターンキー;
    }
    /**マップサイズ**/
    this.size = function() {
        サイズを返す;
    }
    /**クリアマップ**/
    this.clear = function() {
        サイズ = 0;
        エントリ = 新しいオブジェクト();
    }

}
//创建HashMap对オブジェクト
var hashMap = new HashMap();
hashMap.put("A", "1");
hashMap.put("B", "2");
hashMap.put("A", "5");
hashMap.put("C", "3");
hashMap.put("A", "4");
アラート(hashMap.size());


声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。