2009-05-11 1 views
0

Nehmen wir an ich ein Array aufweisen, die n Dimensionen hat. Um nun einen Schlitz für den Zugriff verwenden Sie in der Regel:leicht eine Anordnung auf seinen Dimensionen basierten Zugriff

array [1][0] 

Was passiert, wenn die Anzahl der Dimensionen nicht zur Compile-Zeit bekannt ist, gibt es einen einfachen Zugang wie:

slot = "1,0" 
array [slot] // accessing 1,0 

Was bedeutet, kann ich auch navigieren leicht hin und her

slot += ",2" 
array [slot] // accessing 1,0,2 

jede solche Art und Weise beliebigen Steckplatz in einem MultiDim Array in einer Zeile Code zuzugreifen, in Actionscript? Ich bin nicht für alternativen Code suchen, die es tut indirekt (rekursiven Funktionen oder Schleifen).

In JavaScript können Sie:

slot = "1,0" 
eval("array[" + slot + "]") // accessing 1,0 

Antwort

1

Es gibt keine solche Einrichtung in AS3. Weder wird eval (entnommen aus Sicherheitsgründen meist, IIRC). Letzteres ist auch einer der wenigen Bereiche, in denen sich AS3 von der ECMAScript-Spezifikation unterscheidet.

+0

Wie wäre es AS2? Würde ActionScript 2 eine solche Funktion unterstützen? –

+1

Keine AS2 verwendet. Es gibt ein Eval() - Sie können es versuchen. – dirkgently

+0

ich hoffe ich muss nicht dies als akzeptierte Antwort markieren, wäre es so schade sein! –

Verwandte Themen