Anfängerfrage Variablen ändern
Frankie
- javascript
Hallo, ich komme leider nicht weiter. Kann mir jemand helfen?
<script type="text/javascript">
var $a_1 = "Dies soll ";
var $a_2 = "mal einen schönen ";
var $a_3 = "Satz ergeben";
for (var $i = 0; $i < 4; $i++) {
document.write("$a_" + $i);
}
</script>
Wenn ich das ausführe, bekomme ich (wahrscheinlich folgerichtig) die WERTE "$a_1$a_2$a_3" ausgegeben.
Aber wie bringe ich dem Compi bei, dass er nicht das, sondern den Inhalt der gleichnamigen Variablen ausgeben soll?
Kann mir jemand helfen? Ich versuche mich da schon Stunden dran :o( Danke
1. variablen kennzeichnet man in JS nicht mit einem $ ;)
2. Dafür gibt's Arrays:
var a = new Array;
a[0] = "Dies soll ";
a[1] = "mal einen schönen ";
a[2] = "Satz ergeben";
for (var i=0; i<4; i++) {
document.write(a[i]);
}
mehr dazu findest du auch auf selfhtml.org =P
Gruß, Bumbi
Hi Bumbi, SUPIEEE
Ich hatte $a[1] etc. versucht und andauernd Fehler gekriegt
Mit 'nem Array sieht das dann wohl besser aus :o)
Ich hasse Javascript ...
Ich hatte $a[1] etc. versucht und andauernd Fehler gekriegt
Dann musst du die beseitigen.
Ich hasse Javascript ...
Wegen den Arrays?
Struppi.
var a = new Array;
a[0] = "Dies soll ";
a[1] = "mal einen schönen ";
a[2] = "Satz ergeben";for (var i=0; i<4; i++) {
document.write(a[i]);
}
Das ist insofern fehlerhaft, als dass der letzte Eintrag des Feldes die Nummer 2 hat, die Schleife aber bis i<4, also 3 durchläuft. Besser:
for (var i = 0; i < a.length; i++) {
Auch wenn der Einsatz eines Feldes hier sicherlich die angemessenste Lösung ist, gibt es davon unabhängig auch in Javascript die Möglichkeit, Variablennamen zusammenzubasteln:
var a_1 = "Dies soll ";
var a_2 = "mal einen schönen ";
var a_3 = "Satz ergeben";
for (var i = 1; i <= 3; i++) {
document.write(window["a_" + i]);
}
Aber wie gesagt: Das ist im vorliegenden Fall alles andere als elegant, von einer Verwendung rate ich ausdrücklich ab.
for (var i = 1; i <= 3; i++) {
document.write(window["a_" + i]);
}Aber wie gesagt: Das ist im vorliegenden Fall alles andere als elegant, von einer Verwendung rate ich ausdrücklich ab.
zumal das so auch nur mit globalen Variabeln funktioniert
Struppi.
for (var i = 0; i < a.length; i++) {
Danke Bla, der ist gut, um z.B. individuelle Schleifen zu beenden,
bei denen man den Anzahl der Variablen nicht weiss.
Wieder was dazugelernt :o)
Hallo, ich komme leider nicht weiter. Kann mir jemand helfen?
<script type="text/javascript">
var $a_1 = "Dies soll ";
var $a_2 = "mal einen schönen ";
var $a_3 = "Satz ergeben";
Was sollen die Dollarzeichen?
Du suchst Arrays
Struppi.