Javascript Anfangsprobleme Part II
Stefan D.
Hi wiedermal!
Hier ist das Javascript.
Es wurde getestet mit Netscape 4.05 & 4.07 und InternetExplorer 4.0
Netscape zeigt nur 9 von den verlangten 10 Zeilen an!
<HTML><head>
<title>Welcome to my Homepage!</title>
<script language="JavaScript">
<!--
function Schreibe2()
{
var i;
for(i = 1 ; i <= 10 ; i++)
{
document.write("<br>" + i + "blabla");
}
}
// -->
</script>
</head>
<body onLoad="Schreibe2()">
</body>
</HTML>
Bitte nicht über Sinn und zweck dieses Scripts streiten, es war nur probeweise nur zum schnellen schauen, wie es funktioniert...
nebenbei bemerkt: wenn ich >> var i; << weglasse, reportet netscape einen Fehler... Also braucht Netscape anscheinend alle Variablen definiert.
An Stefan Münz: SelfHTML taugt sehr viel! Ich bin halt altmodisch, und lese halt gerne Sachen in Buchform als in HTML...
Außerdem strengt ein Buch die Augen nicht so an wie ein Bildschirm...
mfg
Stefan aus Wien
var i;
for(i = 1 ; i <= 10 ; i++)
Hallo :-)
Versuch mal zwischenndrinn ein i=0, denn die das Schreiben beginnt ja so mit i=2... oder du setzt halt statt 10 11 ein...
Gruß,
Trurl der Konstrukteur
var i;
for(i = 1 ; i <= 10 ; i++)Hallo :-)
Versuch mal zwischenndrinn ein i=0, denn die das Schreiben beginnt ja so mit i=2... oder du setzt halt statt 10 11 ein...
nach meinen Erfahrungen nützt das nix, Netscape gibt immer noch eine Zeile weniger aus...
entweder mach ich irgendwas phahlsch, oder Netscape hat einen Bug..
:-)
mfg
Stefan aus Wien
Hallo Stefan,
for(i = 1 ; i <= 10 ; i++)
Hast du mal probiert:
for(i = 1 ; i <= 10 ; ++i)
Es gibt naemlich einen Unterschied zwischen i++ und ++i. Leider mach ich das auch immer aus dem Bauch raus und teste Schleifen solange, bis ich habe, was ich will. Aber irgendein Insider wird uns hoffentlich den Unterschied zwischen ++i und i++ noch mal klipp und klar erklaeren koennen... ;-)
viele Gruesse
Stefan Muenz
Hallo Stefan,
for(i = 1 ; i <= 10 ; i++)
Hast du mal probiert:
for(i = 1 ; i <= 10 ; ++i)
Es gibt naemlich einen Unterschied zwischen i++ und ++i. Leider mach ich das auch immer aus dem Bauch raus und teste Schleifen solange, bis ich habe, was ich will. Aber irgendein Insider wird uns hoffentlich den Unterschied zwischen ++i und i++ noch mal klipp und klar erklaeren koennen... ;-)
danke, werds probieren...
Stefan aus Wien
Es gibt naemlich einen Unterschied zwischen i++ und ++i.
Hallo Ihr,
bin leider kein Insider, aber dass habe ich grade gefunden:
a = 5 a bekommt den Wert 5
b = ++a erhoehe zuerst a auf 6, gib b danach den Wert von a (6)
b = a++ gib b den Wert von a (5) und erhoehe danach den Wert von a auf 6
Vielleicht nuetzt es ja was...
Gruss Joachim
Hi!
Es gibt naemlich einen Unterschied zwischen i++ und ++i. Leider mach ich das auch immer aus dem Bauch raus und teste Schleifen solange, bis ich habe, was ich will. Aber irgendein Insider wird uns hoffentlich den Unterschied zwischen ++i und i++ noch mal klipp und klar erklaeren koennen... ;-)
Den hat Joachim ja jetzt schon erklaert, ich mochte noch ein anderes Hintergrundwissen rueberbringen.
Eine for-Schleife ist nur eine kuerzere Schreibweise fuer eine while-Schleife. Prinzipiell kann der Block
for (i=0; i<10; i++) Anweisung;
auch so geschrieben werden (und jeder C-Compiler macht genau das draus):
i=0;
while (i<10) {
Anweisung;
i++;
}
Und daraus folgt, dass in diesem Fall ++i und i++ keinen Unterschied macht. Und ausserdem folgt daraus, dass ich bei Stefan D.'s Problem ziemlich ratlos bin. Ich koennte hoechstens empfehlen, die obige Form mal zu versuchen (also i = 0 bis 9) und dann doc.writeln(i+1).
Calocybe
Eine for-Schleife ist nur eine kuerzere Schreibweise fuer eine while-Schleife. Prinzipiell kann der Block
for (i=0; i<10; i++) Anweisung;
auch so geschrieben werden (und jeder C-Compiler macht genau das draus):
i=0;
while (i<10) {
Anweisung;
i++;
}Und daraus folgt, dass in diesem Fall ++i und i++ keinen Unterschied macht. Und ausserdem folgt daraus, dass ich bei Stefan D.'s Problem ziemlich ratlos bin.
Ich koennte hoechstens empfehlen, die obige Form mal zu versuchen (also i = 0 bis 9) und dann doc.writeln(i+1).
OK, ich werds mit einer while-schleife probieren...
Ein Hoch auf Browser, die sich an Spezifikationen halten...
mfg
Stefan aus Wien
Hallo Stefan.
Ein Hoch auf Browser, die sich an Spezifikationen halten...
Spezifikationen sind eine Sache. Aber hier handelt es sich um das primitivste vom primitiven, eine grndlegendes, einfaches Sprachkonstrukt (also nichts mit DHTML oder so'n Zeuch's). For-Schleifen gibt es schon seit... na keine Ahnung. Sicher schon bevor die Spreche C erfunden wurde, und das war glaub ich in den 70ern. Sowas kann man doch gar nicht falsch machen (ich mein, der Browserhersteller). Schliesslich hat Netscape JavaScript erfunden. Und eigentlich denke ich, es ging auch schon immer. Sogar die Konstruktion
for (;;) endloses_tuen(); wurde unveraendert von C uebernommen. Also ich bin wirklich gespannt, was hier herauskommt. Lass es mich bitte wissen.
Calocybe
Hi wiedermal!
Hier ist das Javascript.
Es wurde getestet mit Netscape 4.05 & 4.07 und InternetExplorer 4.0Netscape zeigt nur 9 von den verlangten 10 Zeilen an!
<HTML><head>
<title>Welcome to my Homepage!</title>
<script language="JavaScript">
<!--
function Schreibe2()
{
var i;
for(i = 1 ; i <= 10 ; i++)
{
document.write("
" + i + "blabla");
}
}
// -->
</script>
</head>
<body onLoad="Schreibe2()"></body>
</HTML>
Hallo !
Das Problem ist das du das Daokument nicht wieder schließt.Also nach der Schleife einfach ein document.close();
Außerdem muß du mit 0 statt mit eins anfangen.
Also nicht : for(i=1;i<=10;i++)
Sondern : for(i=0;i<=10;i++)
Danach funktioniert es.
Tschau.