Flashhilfe.de - Flash Community

Dynamische Indizierte/Multidimensional Arrays [Flash 6]

 


AntwortenRegistrieren Seite1  

Nemo#1
Benutzerbild von Nemo
Beiträge: 2331
Wohnort: Austria
Registriert: Jan 2003

16.02.2004, 11:53

So, nach stundenlangem rumprobieren fand ich endlich eine Lösung für ein Problem. Und ich dachte mir, dass könnte ein Eintrag im T&T Forum wert sein, um anderen den gleichen Schlamassel zu ersparen.

Das Array Objekt, ist ein dynamischer Platzhalter für alles mögliche. Es hat das früher als Ersatz verwendete eval() in dieser Funktion abgelöst. Unverständlich deshalb, warum es so schwer ist dynamische Multidimensional Arrays, oder Indixierte Arrays zu erstellen. Ein Beispiel:
ActionScript:
1
2
test = new Array({name:"hallo", wert:"welt"});
trace(eval("test[0].name"));

gibt "undefined" zurück. Ziemlich unverständlich, und schwer zu durchschauen.

Mit viel Mühe habe ich nun hier diese Lösungen zusammengetragen:
ActionScript:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
//Normale Arrays:
pp = new Array("hallo", "welt");
i = 0;
trace(eval("pp")[i]);
//Indizierte Arrays mit Vorgabewert:
pp = new Array({name:"hallo", wert:"welt"});
i = 0;
trace(eval("pp")[i].name);
//Indizierte Arrays ohne Vorgabewert(dynamisch):
pp = new Array({name:"hallo", wert:"welt"});
i = 0;
wert = "name";
temp = eval("pp")[i];
trace(eval("temp."+wert));
//Multidimensionale Arrays:
pp2 = new Array("hallo", "welt");
pp1 = new Array(pp2);
i = 0;
n = 0;
trace(pp1[i][n]);
//Multidimensionale Indixierte Arrays ohne Vorgabewert:
pp2 = new Array({name:"hallo", wert:"welt"});
pp1 = new Array(pp2);
i = 0;
n = 0;
wert = "name";
temp = eval("pp1")[i][n];
trace(eval("temp."+wert));




----------------------------
Dimidium facti, qui coepit, habet.
----------------------------
Dimidium facti, qui coepit, habet.
H@ilo#2
Benutzerbild von H@ilo
Beiträge: 15261
Wohnort: Bremen
Registriert: Jan 2002

16.02.2004, 14:43

Hast du mal  trace(test[0].name);  probiert?


H@ilo
Freizeitflasher
H@ilo
Freizeitflasher
Nemo#3
Benutzerbild von Nemo
Beiträge: 2331
Wohnort: Austria
Registriert: Jan 2003

Themenautor/in

16.02.2004, 16:08

H@ilo ich bin enttäuscht, du hast den Sinn der Übung offensichtlich nicht verstanden. Bitte stell dich in die Ecke und denk darüber nach, was du gesagt hast! ^.^



[Es geht darum, diese Werte dynamisch auszulesen, sprich man weiß vorher nicht, ob man index 0, 1, 2 will, ob man den Wert .name oder den Wert .wert möchte. Beispielsweise in einer Schleife, in der man alle Werte vergleichen will, aber über Benutzereingabe erst erfährt welchen der Werte. Eine Flash only Datenbank eben]

----------------------------
Dimidium facti, qui coepit, habet.
----------------------------
Dimidium facti, qui coepit, habet.
Kosh#4
Benutzerbild von Kosh
Beiträge: 744
Wohnort: Berlin
Registriert: Mar 2003

20.02.2004, 17:16

Nur am Rande, um Nemo mal wieder auf den Boden zu holen :D
1. Multidimensional Arrays bezeichnet man als Matrizen
2. Indixierte Arrays sind was? Jedes Array hat nen Index oder besser gesagt Indizies. meinst du vllt ein Assoziativ Array?!
3. *blaeht sich auf wie ein Kockel*

Gruss
Kosh
zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz
Ich kann kein Kuchen backen wenn ich nicht weiss was Mehl ist.
zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz
Gruss
Kosh
zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz
Ich kann keinen Kuchen backen wenn ich nicht weiss was Mehl ist.
zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz
Nemo#5
Benutzerbild von Nemo
Beiträge: 2331
Wohnort: Austria
Registriert: Jan 2003

Themenautor/in

03.03.2004, 15:25

<<<
3. *blaeht sich auf wie ein Kockel*
>>>

lass mal lieber wieder die Luft raus, denn:

<<<
1. Multidimensional Arrays bezeichnet man als Matrizen
>>>
schön, aber Macromedia spricht in diesem Zusammenhang eben doch von "Multidimensionalen Arrays". Du kannst ja einen Bug Report verfassen...

<<<
2. Indixierte Arrays sind was? Jedes Array hat nen Index oder besser gesagt Indizies. meinst du vllt ein Assoziativ Array?!
>>>

die rede ist von "dynamisch indizierten Arrays" und in diesem Zusammenhang ist das bitte auch weiterhin zu verstehen. Wenn also indizierte Arrays vorkommen, sind Arrays mit einem (dynamisch) zugewiesenen Index, also Arrays wie namen[1].vorname, gemeint. Im Zweifelsfall sollten die Beispiele für sich selbst sprechen.
dynamisch Indizieren = der Index, der ja nicht nur aus Zahlen bestehen muss, wird dynamisch zugewiesen.



Wirklich was ist denn aus den Regeln geworden? Wenn man etwas nicht versteht kann man es ja ignorieren oder im OT Forum nachfragen, hier sollten nur wichtige Ergänzungen hin...
----------------------------
Dimidium facti, qui coepit, habet.
----------------------------
Dimidium facti, qui coepit, habet.
Geändert von Nemo am 03.03.04 um 15:38 Uhr

AntwortenRegistrieren Seite1  

Schnellantwort

Du musst registriert sein, um diese Funktion nutzen zu können.

 
Ähnliche Beiträge zum Thema
Partner Webseiten: art-and-law.de  Mediengestalter.info   phpwelt.de   Scubacube.de  
Haftungsausschluss   Datenschutzerklärung   Impressum
© 1999-2021 Sebastian Wichmann - Flashhilfe.de