Philipp Grashoff: Auf Variablen mit variablen Namen zugreifen

HI Forumler,

ich lasse einige Javascript-Variablen generieren, ihre Namen sehen z.B. so aus: preis_zahl, wobei zahl variabel ist. Nun habe ich eine funktion, der eine Zahl als parameter uebergeben wird. Diese soll dann die variable preis_zahl, wobei zahl eben Zahl sein soll, weiterverarbeiten. Das Problem ist, dass ich nicht weiss, wie ich auf den wert dieser Variablen zugreifen soll, wenn ich sowas wie preis_+zahl schreibe, kommt "preis_ is undefined", wenn ich sowas wie "preis"+zahl schreibe, fasst er das ganze als String auf, nicht als Variablennamen...

MFG

Philipp

  1. mit eval ist es am einfachsten!(führt einen String aus)
    z.B. eval("variable = preis_"+zahl+";");
    und schon kannst du variable weiterverarbeiten.

    Marco

    1. Hi Marco,

      vielen dank ;)

      Philipp

    2. mit eval ist es am einfachsten!(führt einen String aus)
      z.B. eval("variable = preis_"+zahl+";");
      und schon kannst du variable weiterverarbeiten.

      Mit eval ist es am schwierigsten. eval ist langsam und fehlerträchtig.

      variable = window['preis_' + zahl];

      Aber das was der op in wirklichkeit sucht sind Arrays.

      Struppi.

  2. Hi Philipp,
    Ich würd preis als Array deklarieren und dann mit preis[zahl] drauf zugreifen.
    Gunnar