Günter Marchewka: variable variablen wie in PHP?

Beitrag lesen

Hallo Simon,

kennt Javascript eignetlich acuh variable Variablen?
oder wie löse ich z.B. einen Aufruf a la

function load_in_frame(das_element) {
  das_element = "navigationframe";
  parent.{das_element}.location.href="test.html";
}

Ja das geht hervorragend auf vielfältige Weise. Hier zwei Beispiele:
function SETSTATUS(x)
 {
  var arr = showModalDialog( "status.htm",
                             "",
                             "font-family:Arial; font-size:10; dialogWidth:30em; dialogHeight:46em" );

if (arr != null)
  {
    document.all[x.name].value = arr;
  }

}
Der vorstehenden Funktion wird der Name einer Variablen übergeben, deren Inhalt danach in Abhängigkeit vom Ergebnis eines Dialoges verändert wird.
Ist der Name der Variablen aber auch nicht bekannt, weil irgendwo anders gespeichert, kann es so gehen:
function writeEintrag()
{
  var FEdaten = '';

for (d=0;d< FEvar.length;d++)
      {
            FEdaten += FEvarName + "[" + FEvarName + ".length] = new " + FEname + "();";
            for (i=0;i < FEfelder.length;i++)
               {
                FEdaten += FEvarName + "[" + FEvarName + ".length-1]." + FEfelder[i].name + "='" + FEvar[d][FEfelder[i].name] + "';";
               }
      }
}
Hier sind die Variablennamen in einem Array gespeichert, der über eine Schleife durchlaufen wird und es wird für einen anderen Array ein neuer Eintrag erzeugt. Wobei ebenfalls der Name des zweiten Arrays unbekannt und in einer Variablen gespeichert ist.
(Es fehlt ein Teil Code, der über document.write den Inhalt von FEdaten ausführt. Das Prinzip sollte aber erkennbar sein. )
Es ist alles eine Frage der Adressierung des unbekannten Namens. Die Beispiele gelten für den IE. Eine Anpassung an andere Browser solltest Du hin bekommen.
Gruß
Günter