Dynamische Webseiten

Virtueller Campus Projekt, PHBern

StartseiteJavaScriptCSSJSPPHPMySQLDrucken

Schriftgrösse: kleiner - zurücksetzen - grösser

Variablen

Variablen sind Speicherbereiche, in denen man Daten, die man im Verlauf eines Programms benötigt, speichern kann. Jede Variable hat einen Namen und den zugewiesenen Wert. Variablentypen müssen im Unterschied zu anderen Programmiersprachen wie z.B. Java nicht deklariert werden. Variablen werden automatisch zu einem bestimmten Datentyp, wenn ihnen Werte zugewiesen werden.

vorname = "Peter";
a = 5;
b = 23.45;
primzahl = false;

Die Variable antwort ist vom Typ String, a ist vom Typ Integer, b ist vom Type Double und primzahl ist vom Typ boolean.

Diese schwache Typisierung von Variablen bringt viele Nachteile, insbesondere wenn man mit Eingabefeldern arbeitet. Es gibt Situationen, in denen man mit sogenannter Typenkonvertierung die richtigen Datentypen erzwingen muss.

Namen von Variablen müssen mit einem Buchstaben (a-z, A-Z) oder einem Unterstrich (_) beginnen. Der Rest des Variablennamen darf auch die Ziffer 0 – 9 enthalten. Es empfiehlt sich, keine Umlaute zu verwenden. Reservierte Wörter dürfen nicht als Variablennamen verwendet werden.
Variablen können mit dem Schlüsselwort "var" deklariert werden, diese Deklaration hat nur im Zusammenhang mit Funktionen eine Bedeutung. Innerhalb von Funktionen hat das Schlüsselwort "var" einen Einfluss auf den lokalen und globalen Charakter von Variablen (siehe "Geltungsbereich von Varialen" im Abschnit Funktionen). Ausserhalb von Funktionen sind Variablen in JavaScript immer global gültig, d.h. sie sind in der gesamten HTML-Seite erreichbar, unabhängig davon, ob sie mit "var" oder ohne "var" deklariert werden.
Man kann einer Variablen einen Wert zuweisen z.B. n = 1 . Eine Variable hat den Wert null (nicht zu verwechseln mit 0), wenn ihr also noch kein Wert zugewiesen wurde.

Null

Das Schlüsselwort "Null" bezeichnet den Nullwert. Es repräsentiert "nichts". Wenn wir in einer Dialogbox die Eingabe mit "Abbrechen" beenden, wird "null" zurückgegeben bsp.htm . Diese "null" ist zu unterscheiden von der Zahl "0" oder einer leeren Eingabe.

Typkonvertierung

Je nach verwendeten Operatoren erfolgt die Typkonventierung automatisch. Bei den Operatoren, die sowohl für Zeichen als auch für Zahlen benutzt werden (z. B. "+"), müssen Daten, die zum Rechnen gebraucht werden, explizit konventiert werden.

Funktion
Rückgabe

parseInt (Zeichenkette)

Liefert eine ganze Zahl

parseFloat (Zeichenkette)

Liefert eine Dezimalzahl
eval (Zeichenkette) Wertet einen arithm. Ausdruck aus eval("2 * 6 / 4") = 3

Beispiel 1: Automatische Typenkonventierung liefert ein falsches Ergebnis
Die beiden mit Promt-Dialogbox eingegebenen Werte a und b werden als Zeichenketten aufgefasst und die Operation "+" bewirkt ihre Verkettung. So lieger die Eingabe a = 3, b = 5 das Ergebnis "Die Summe ist 35".

<HTML>
<HEAD>
</HEAD>
<BODY>
<SCRIPT LANGUEGE = "JavaScript">
  a = prompt("Geben sie die erste Zahl ein "," ");
  b = prompt("Geben sie die zweite Zahl ein "," ");
  x = a + b; document.write("Die Summe ist ", x);
</SCRIPT>
</BODY>
</HTML> 
Beispiel zeigen (datentypen1.html)

Beispiel 2 : Typenkonventierung mit parseInt()

<HTML>
<HEAD>
</HEAD>
<BODY>
<SCRIPT LANGUEGE = "JavaScript">
  zahla = prompt("Geben sie die erste Zahl ein "," ");
  a = parseInt(zahla);
  zahlb = prompt("Geben sie die zweite Zahl ein "," ");
  b = parseInt(zahlb);
  x = a + b;
  document.write("Die Summe ist ", x);
</SCRIPT>
</BODY>
</HTML> 

Beispiel zeigen (datentypen2.html)


Nach der Typenkonventierung werden die Zahlneingaben richtig interpretiert und die Summe richtig berechnet. Die beiden Zeilen

zahla = prompt("Geben sie die erste Zahl ein "," "); 
a = parseInt(zahla);

können auch zu einer Zeile zusammengefasst werden:

a =  parseInt(prompt("Geben sie die erste Zahl ein "," "));