2010-08-03 11 views
13

Czy ktoś może przekierować mnie do odpowiedniego łącza lub podać przykład jak pracować z dwuwymiarową tablicą lub HashTable w JQuery? Próbowałem google, ale nie dostałem odpowiedzi. Chcę uniknąć używania jakichkolwiek wtyczek. Wszystko, co chcę zrobić, przechowywać pewne informacje i odzyskać je jak sposób HashTable.Jak - przechowywać klucz pary wartości w tablica dwuwymiarowa i HashTable za pomocą JQuery?

+0

Czy Twój dwa słabe. tablica jak stół lub bardziej jak matryca? –

+0

Jest to rodzaj hashtable, który zawiera parę wartości klucza. Ponieważ nie ma rzeczy HashTable w Jquery, myślałem, że dwa dim array będzie lepszym rozwiązaniem. Natknąłem się teraz na jhashtable (http://www.timdown.co.uk/jshashtable/). Zastanawiasz się, czy można go użyć w projekcie. – Asdfg

Odpowiedz

29

W zależności od tego, co chcesz użyć jako klucze do swojego „hashtable”, możesz użyć obiektu z właściwości tablicy zamiast dwuwymiarowej tablicy.

Na przykład:

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

Można również ustawić i dostęp do wartości w obiekcie z wykorzystaniem notacji dot:

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

Jeśli szukasz po prostu śledzić głównych parach/wartość następnie obiekt jest drogą:

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

Dokładnie to, co właśnie miałem zamiar wpisać :) –

+0

i Dokładnie to, czego szukałem. Doceń swoją odpowiedź. – Asdfg

6

dwuwymiarowa tablica to javascript. Właśnie dlatego nie uzyskujesz wyników w google.

to coś takiego.

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 

lub

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

Nie byłem pewien, jaki jest najlepszy sposób, aby spełnić moje wymagania, ale twoja odpowiedź odpowiada dokładnie temu, o co pytano. Dziękuję za odpowiedź. Ale czy masz coś przeciwko, jeśli przyjmuję odpowiedź Mario Mengera, ponieważ wyjaśnia, czego dokładnie szukałem. – Asdfg

+0

tak! ... nie martw się wcale;) możesz po prostu zaktualizować swoje pytanie powyżej, aby dopasować się do odpowiedzi, której szukałeś. Aby inni nie byli zdezorientowani. – Reigel

0

Althou gh bardzo spóźniona odpowiedź, możesz użyć biblioteki jsashtable js, która prawie naśladuje bazę danych hashMap w java/C#. Ma nawet metodę toQueryString(), która konwertuje parę klucz-wartość do zapytania o kwerendy dla żądań HTTP.

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

Powiązane problemy