ホームページ >ウェブフロントエンド >jsチュートリアル >Java_javascript スキルで Map オブジェクトの機能を実装するための JS カスタム オブジェクトのメソッド

Java_javascript スキルで Map オブジェクトの機能を実装するための JS カスタム オブジェクトのメソッド

WBOY
WBOYオリジナル
2016-05-16 16:19:011699ブラウズ

この記事の例では、JS カスタム オブジェクトが Java で Map オブジェクト関数を実装する方法について説明します。皆さんの参考に共有してください。具体的な分析は次のとおりです。

Java にはコレクション、Map などのオブジェクト ストレージ ツール クラスがありますが、これらのオブジェクトは簡単に使用できますが、JavaScript では Array オブジェクトしか使用できません。

ここではカスタム オブジェクトを作成します。このオブジェクトにはデータを保存するための配列が含まれており、実際にコンテンツを保存できます。

ここでは、Key に String 型を使用する必要があり、Java と同様に、追加、削除、変更、取得などの操作を実行できます。

使い方はとても簡単です。まずツールを紹介します。

コードをコピー コードは次のとおりです:
/**
* @バージョン 1.0
* ページの Map オブジェクトを実装するために使用されます。キーは文字列のみであり、オブジェクトは任意です
​*/
var Map = function(){
    this._entrys = 新しい Array(); 
     
    this.put = function(key, value){
        if (key == null || key == 未定義) {
            戻る; 
        }
        var インデックス = this._getIndex(key); 
        if (インデックス == -1) {
            var エントリ = 新しいオブジェクト(); 
            エントリ.キー = キー; 
            エントリ.値 = 値; 
            this._entrys[this._entrys.length] = エントリ; 
        }その他{
            this._entrys[インデックス].value = 値; 
        }
    }; 
    this.get = function(key){
        var インデックス = this._getIndex(key); 
        return (インデックス != -1) ? this._entrys[インデックス].value : null; 
    }; 
    this.remove = function(key){
        var インデックス = this._getIndex(key); 
        if (インデックス != -1) {
            this._entrys.splice(index, 1); 
        }
    }; 
    this.clear = function(){
        this._entrys.length = 0;; 
    }; 
    this.contains = function(key){
        var インデックス = this._getIndex(key); 
        return (インデックス != -1) ? true : false; 
    }; 
    this.getCount = function(){
        this._entrys.length を返します。 
    }; 
    this.getEntrys = function(){
        this._entrys を返します。 
    }; 
   this._getIndex = function(key){
        if (key == null || key == 未定義) {
            -1 を返します。 
        }
        var _length = this._entrys.length; 
        for (var i = 0; i <_length i>             var エントリ = this._entrys[i]; 
            if (エントリ == null || エントリ == 未定義) {
                続く; 
            }
            if (entry.key === key) {//equal
                私を返します。 
            }
        }
        -1 を返します。 
    }; 
}

 
J 内のオブジェクトの構築などの基本がわかっていれば、自分自身をネットワークに接続できます。
复制代码 代码如下:
// 自定义Map对象
var マップ = 新しい Map(); 
マップ.put("a","a"); 
アラート(map.get("a")); 
マップ.put("a","b"); 
alert(map.get("a"));


まず a をポップし、次に b をポップします。後者は前のものを上書きするためです。

他の方法も自分で書いてください。

この記事が皆様の JavaScript プログラミング設計に役立つことを願っています。

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