Cet article décrit la méthode d'implémentation des fonctions des objets MAP dans Java par des objets personnalisés dans JS. Partagez-le pour votre référence. L'analyse spécifique est la suivante:
Il existe des classes d'outils de stockage d'objets telles que les collections et la carte en Java. Ces objets sont faciles à utiliser, mais dans JavaScript, vous ne pouvez utiliser que des objets Array.
Ici, je crée un objet personnalisé, qui contient un tableau pour stocker des données. L'objet de données est une clé qui peut être stockée!
Ici, vous souhaitez utiliser le type de chaîne. Comme Java, vous pouvez effectuer des opérations qui ajoutent, suppriment, modifient et obtiennent.
C'est très simple à utiliser, je vais d'abord vous montrer la classe d'outils:
Copiez le code comme suit: / **
* @version 1.0
* Utilisé pour implémenter l'objet Page Map, la clé ne peut être qu'une chaîne, l'objet peut être arbitraire
* /
var map = function () {
this._entrys = new Array ();
this.put = fonction (clé, valeur) {
if (key == null || key == undefined) {
retour;
}
var index = this._getIndex (key);
if (index == -1) {
var entrée = nouveau objet ();
entrée.Key = key;
entrée.value = valeur;
this._entrys [this._entrys.length] = entrée;
}autre{
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)? vrai: false;
};
this.getCount = function () {
retourner this._entrys.length;
};
this.getEntrys = function () {
Renvoie ce._entrys;
};
this._getIndex = fonction (key) {
if (key == null || key == undefined) {
retour -1;
}
var _length = this._entrys.length;
pour (var i = 0; i <_length; i ++) {
var entrée = this._entrys [i];
if (entrée == null || entrée == Undefined) {
continuer;
}
if (entry.key === key) {// égal
retour i;
}
}
retour -1;
};
}
Si vous ne comprenez pas certaines connaissances de base telles que la création d'objets dans JS, vous pouvez le vérifier en ligne.
Copiez le code comme suit: // Objet de carte personnalisé
var map = new Map ();
map.put ("a", "a");
alert (map.get ("a"));
map.put ("a", "b");
alert (map.get ("a"));
D'abord pop a puis pop b, car celui derrière couvrira celui devant!
Tout le monde vous écrit d'autres méthodes!
J'espère que cet article sera utile à la programmation JavaScript de tous.