Istnieją następujące wyniki zapytania: (klucz1 i klucz2 mogą być dowolnym tekstem)
id key1 key2 value
1 fred apple 2
2 mary orange 10
3 fred banana 7
4 fred orange 4
5 sarah melon 5
...
i chcę przechowywać dane w siatce (może jako tablica) zapętlając wszystkie rekordy w ten sposób:
apple orange banana melon
fred 2 4 7 -
mary - 10 - -
sarah - - - 5
W PHP byłoby to naprawdę łatwe, używając tablic asocjacyjnych:
$result['fred']['apple'] = 2;
Ale w tablicach asocjacyjnych JavaScript takich jak ta nie działa. Po przeczytaniu mnóstwa samouczka, wszystko, co mogłem uzyskać, to:
arr=[];
arr[1]['apple'] = 2;
ale arr['fred']['apple'] = 2;
nie działa. Próbowałem tablic obiektów, ale właściwości obiektów nie mogą być dowolnym tekstem. Im więcej czytałem samouczki, tym bardziej byłem zdezorientowany ...
Każdy pomysł jest mile widziany :)
var grid = {};grid['aa']['bb'] = 1;
zwracają „Uncaught TypeError: Cannot set property 'bb' undefined". Mogę się mylić, ale w przypadku większości twoich przykładów muszę znać dane w czasie inicjalizacji.