2010-09-12 4 views
0

Je fais du développement web, et j'aimerais utiliser un tableau associatif dans mon code. J'ai utilisé des hashtables dans d'autres travaux de conception, et ils font vraiment l'affaire. Cependant, lorsque j'essaie d'appeler "var coms = new Hashtable();", j'obtiens des erreurs indiquant qu'il n'y a pas de tables de hachage de classe. J'ai lu que dans JS tous les objets sont des hashtables, donc je suppose que si je devais définir un objet vide, et le nommer Hashtable, je serais prêt à partir. Je vais essayer ça maintenant. Cependant, ce serait bien si quelqu'un pouvait me dire comment appeler une hashtable officielle.Les tables de hachage ne fonctionnent pas vraiment

Répondre

4

Vous pouvez dire var coms = {} ou var coms = new Object()

Les objets sont hashtables dans JS

coms.something = 1 est la même chose que coms["something"] = 1

La notation de support est généralement plus couramment utilisé pour "hashage" dans JS depuis sa utilisé pour des associations comme var coms = {"something": 1} et est utilisé dans des langages comme Python pour la représentation de hashtable/dict réelle.

1

Il y a une implémentation de table de hachage JavaScript appelé jshashtable, écrit par moi. Contrairement à un JavaScript Object, il permet à n'importe quel objet d'être utilisé comme une clé.

var h = new Hashtable(); 
var o = {}; 
h.put(o, "Some value"); 
h.put("foo", 23); 
alert(h.get(o)); // "Some value" 
Questions connexes