Heim  >  Artikel  >  Web-Frontend  >  JavaScript implementiert die Map-Struktur in Java

JavaScript implementiert die Map-Struktur in Java

高洛峰
高洛峰Original
2016-11-28 14:58:451189Durchsuche

Map in Java ist eine sehr praktische Sammlung. Ich bin es gewohnt, Map in Java zu verwenden. Ich bin jedoch schon einmal auf Situationen gestoßen, in denen Map benötigt wurde , AS verfügt tatsächlich über eine Dictionary-Wörterbuchklasse, die Map in Java ersetzen kann. Gleichzeitig kann Map auch mithilfe der Attributwertform des Objekts implementiert werden. Hier verwendet die Map-Implementierung von JS den Attributwert des Objekts . Die Implementierung ist sehr einfach und dient lediglich dazu, Java-Programmierern das einfache Schreiben von JS-Code zu ermöglichen.

//construction
function Map() {
        this.obj = new Object();
};
 
//add a key-value
Map.prototype.put = function(key, value) {
        this.obj[key] = value;
};
 
//get a value by a key,if don't exist,return undefined
Map.prototype.get = function(key) {
        return this.obj[key];
};
 
//remove a value by a key
Map.prototype.remove = function(key) {
        if(this.get(key)==undefined) {
                return;
        }
        delete this.obj[key];
};
 
//clear the map
Map.prototype.clear = function() {
        this.obj = new Object();
};
 
//get the size
Map.prototype.size = function() {
        var ary = this.keys();
        return ary.length;
};
 
//get all keys
Map.prototype.keys = function() {
        var ary = new Array();
        for(var temp in this.obj) {
                ary.push(temp);
        }
        return ary;
};
 
//get all values
Map.prototype.values = function() {
        var ary = new Array();
        for(var temp in this.obj) {
                ary.push(this.obj[temp]);
        }
        return ary;
};


Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn