| |||||||
Du magst keine Werbung? Wir auch nicht!
Einfach registrieren und die Werbung ist weg. Diese Nachricht sehen nur nicht registrierte Nutzer.
![]() |
| | LinkBack | Themen-Optionen | Ansicht |
| | #1 (permalink) |
| Entscheide Dich Registriert seit: Apr 2003 Ort: Düsseldorf
Beiträge: 218
| Mehr dimensionale Arrays und hashes
Ich habe diese Frage ja schon mal aufgeworfen, aber ich bin da nicht mit klar geworden. 1. Ich habe ein assoziatives Array und zwar: Code: felDIM = new Array();
felDIM={x: fillin_txt._x, y: fillin_txt._y, laenge: fillin_txt._width, lpos: links_, rpos: rechts_, txt: fillin_txt.text}; Code: felder = new Array(new Array(new Array())); felder[1][1].x den Wert auslesen. das bekomme ich aber nicht hin!! Irgendwas mach' ich da falsch. Wie macht man das bloß richtig? Michael |
| | |
| | #2 (permalink) |
| Nagelneuer User Registriert seit: Dec 2005
Beiträge: 924
|
Hallo YesNo, du musst deine Arrays mit Schleifen erzeugen. So wie du es jetzt machst, hast du ein Array, dass nur an der ersten Stelle ein Array enthält, das selbst wieder ein Array an der ersten Stelle enthält. Also felder[0][0] ist ein Array wie gewünscht, aber alle anderen Einträge wie z.B. felder[0][1] oder felder[1][0] sind keine Arrays. mfg. h
__________________ The fact that you've got "Replica" written on the side of your gun and the fact that I've got "Desert Eagle written on the side of mine ... :D Geändert von hazy fantazy (30-04-2006 um 09:02 Uhr) |
| | |
| | #3 (permalink) |
| Entscheide Dich Registriert seit: Apr 2003 Ort: Düsseldorf
Beiträge: 218
|
Verstehe! Aber wie soll die Schleife aussehen. Wenn ich im ersten Array keine Werte stehen habe. Also Array felder[0][0] ist leer bzw 0 aber felder[1][0] (z.B.) hat das o.g. Array felDIM {...}. Wenn ich dem Array in felder[0][0] Hash - Werte zuweise geht's aber bei den anderen nicht. ???? Michael |
| | |
| | #4 (permalink) |
| MisterStandalone Registriert seit: Feb 2003
Beiträge: 91
|
Hi Michael, Du solltest auf jedenfall erstmal alle Arrays erzeugen, die "irgendwie" sein könnten, ala ActionScript:
damit hast du erstmal überall leere Arrays zur Verfügung. Dein Code ActionScript:
erzeugt gar kein Array im Endeffekt: Zuerst machst du mit felDIM ein neues leeres Array, soweit so gut. Aber dann überschreibst du mit felDIM={...} dieses Array mit einem Objekt, da die geschweiften Klammern ein neues Objekt erzeugen. Wenn felDIM ein assoziatives Array sein soll (was ja im Endeffekt aufs selbe rauskommt) müsstest du felDIM so belegen ActionScript:
hth p.s: Schön auch mal nicht in Englisch zu schreiben |
| | |
| | #5 (permalink) |
| Entscheide Dich Registriert seit: Apr 2003 Ort: Düsseldorf
Beiträge: 218
|
Danke AGo soweit so gut. jetzt habe ich aber ein 3D Array dem ich in jedem n und m arr3[n][m] ein hash also temp_obj zuweisen will. So das ich dann z.B. arr3[1][1].txt abfragen kann! Wie du da oben tem_obj= {...} zugewiesen hast, so müßte ich doch auch arr3[1][1]={...} zuweisen können. und dann auch arr3[1][1].txt abfragen! Aber wieso geht das nicht? Mi |
| | |
| | #6 (permalink) |
| Entscheide Dich Registriert seit: Apr 2003 Ort: Düsseldorf
Beiträge: 218
|
Ich hab mal folgendes gemacht. Code: felDIM = new Array(); felDIM={x: fillin_txt._x, y: fillin_txt._y, laenge: fillin_txt._width, lpos: links_, rpos: rechts_, txt: fillin_txt.text}; dann kann ich z.B. felder[0][1].txt abfragen! Wenn ich haber felder[1][0]=felDIM; definiere, dann bekomme ich mit felder[1][0].txt aber undefined heraus!!! Und das ist das Ende der Fahnenstange Michael |
| | |
| | #7 (permalink) |
| MisterStandalone Registriert seit: Feb 2003
Beiträge: 91
|
wenn du ein Array x[n][m] hast ist es zweidimensional. Das Objekt an index n in x ist ein array, und das objekt an index m im array x[n] währe dann dein Objekt. ich ahb dir mal eine FLA angehängt (F8) die dir hoffentlich weiterhilft, sie erzeugt ein kleines Schachfeld, udn belegt ein feld mit einer Figur ("X") |
| | |
![]() |
| Lesezeichen |
| Themen-Optionen | |
| Ansicht | |
| |