JavaScript Variablen-Namen zusammenfügen

2 Antworten

Löse das doch mit Arrays... So 'variable Variables' gibts in JS in dem Sinne nicht wirklich.

Woher ich das weiß:Studium / Ausbildung – Informatikstudium

MatriX58 
Beitragsersteller
 29.04.2015, 13:40

Ich habe es  bisher so probiert:


var img_no = "1";

var text_[img_no] = "hier text einfügen";

var status_[img_no] = "1";

var height_[img_no] = "40";

allerdings funktioniert dadurch mein javascript nicht mehr mit dem Fehler


SyntaxError: missing ; before statement

0
triopasi  29.04.2015, 13:59

Das geht so auch nicht. Google mal nach JS Arrays.

0
PWolff  29.04.2015, 15:26

Vielleicht sind die Variablen doch so fürchterlich variabel?

Ich würd's mal mit

eval('var text_' + img_no + ';');
eval('text_' + img_no + ' = "' + einzugebenderText + '";');
variableRausholen = eval('text_' + img_no);

probieren - das ist ähnlich dem erwähnten Vorschlag von stackoverflow.

Meine Warnung von https://www.gutefrage.net/frage/java-variable-im-objektnamen?foundIn=answer-listing#answer-160147219 gilt natürlich auch hier.

Soweit ich weiß, erweitern sich Arrays in JavaScript/ECMAScript bei Bedarf automatisch, sodass derartige Klimmzüge völlig überflüssig sind.

1

Die Lösung ist falsch Die du dir da ausdenkst. Warum soll eine variable zur Laufzeit mit variablen Namen erzeugt werfen. Die sprache  brauch sowas nicht. Das löst man schlicht anders.