2010-08-03 13 views
13

Quelqu'un peut-il me rediriger vers le bon lien ou donner un exemple de la façon de travailler avec tableau bidimensionnel ou HashTable dans JQuery? J'ai essayé google mais n'ai pas eu la réponse. Je veux éviter d'utiliser des plugins. Tout ce que je veux faire, stocker des informations et les récupérer comme manière HashTable.Comment stocker la paire de valeurs de clé dans un tableau bidimensionnel et une table de hachage à l'aide de JQuery?

+0

Vos deux dim. tableau comme une table ou plus comme une matrice? –

+0

Il s'agit en quelque sorte d'une table de hachage contenant une paire valeur/clé. Comme il n'y a pas de chose de HashTable dans Jquery, je pensais que deux dim array serait une meilleure solution. Je suis tombé sur jhashtable (http://www.timdown.co.uk/jshashtable/) tout à l'heure. Vous vous demandez si c'est OK pour l'utiliser dans le projet. – Asdfg

Répondre

29

Selon ce que vous voulez utiliser comme clés dans votre « Hashtable », vous pouvez utiliser un objet avec des propriétés de tableau au lieu d'un tableau à deux dimensions.

Par exemple:

var hashtable = {}; 
hashtable['screaming'] = ["red","orange"]; 
hashtable['mellow'] = ["skyblue","yellow","green"]; 

vous pouvez également définir des valeurs accès à un objet en utilisant la notation par points:

hashtable.screaming = ["red","orange"]; 
alert(hashtable.screaming[0]); 

Si vous êtes à la recherche de garder une trace de paires clé/valeur puis un objet est le chemin à parcourir:

var hashtable = {}; 
hashtable['key1'] = 'value1'; 
hashtable['key2'] = 'value2'; 
hashtable.key3 = 'value3'; 
+0

Exactement ce que je vais juste taper :) –

+0

et exactement ce que je cherchais. Appréciez votre réponse beaucoup. – Asdfg

6

Le tableau bidimensionnel est javascript. C'est pourquoi vous n'obtenez pas de résultats sur google.

c'est quelque chose comme ça.

var arr = []; 
arr[0] = [1,12,3,5]; 
arr[0][0]; // returns 1 
arr[0][1]; // returns 12 
arr[0][2]; // returns 3 
arr[0][3]; // returns 5 

ou

var outerA = new Array(); 
outerA[0] = new Array(); 
outerA[1] = new Array(); 
outerA[2] = new Array(); 
+0

Je n'étais pas sûr de ce qui est le meilleur à utiliser pour mon exigence, mais votre réponse correspond exactement à ce que la question a été posée. Merci d'avoir répondu. Mais est-ce que ça vous dérange si j'accepte la réponse de Mario Menger qui explique ce que je cherchais exactement. – Asdfg

+0

ouais! ... pas de soucis du tout;) vous pouvez simplement mettre à jour votre question ci-dessus pour correspondre à la réponse que vous vouliez. Pour que les autres ne soient pas confus. – Reigel

0

Althou gh une réponse très tardive, vous pouvez utiliser la bibliothèque jhashtable js qui imite presque la structure de données hashMap dans java/C# .Il a même une méthode toQueryString() qui convertit la paire clé-valeur en querystring pour les requêtes http.

http://www.timdown.co.uk/jshashtable/index.html