Leicht ein Array zuzugreifen, basierend auf seinen Dimensionen
-
21-08-2019 - |
Frage
Lassen Sie uns sagen ich ein Array haben, das hat n Dimensionen. Um nun einen Schlitz zugreifen, die Sie normalerweise verwenden:
array [1][0]
Was passiert, wenn die Anzahl der Dimensionen bekannt sind, nicht zur Compile-Zeit, gibt es einen einfachen Zugang wie:
slot = "1,0"
array [slot] // accessing 1,0
Was bedeutet, kann ich auch leicht navigieren hin und her
slot += ",2"
array [slot] // accessing 1,0,2
Eine solche Art und Weise jeder Schlitz in einem MultiDim Array zuzugreifen in einer Codezeile, in Actionscript? Ich bin nicht für alternativen Code suchen, das tut es indirekt (rekursiven Funktionen oder Schleifen).
In JavaScript können Sie:
slot = "1,0"
eval("array[" + slot + "]") // accessing 1,0
Lösung
Es gibt keine solche Einrichtung in AS3. Weder ist eval
(aus Sicherheitsgründen meist herausgenommen, IIRC). Letzteres auch einer der wenigen Bereiche ist, wo AS3 von der ECMAScript-Spezifikation abweicht.