Variablen sind Speicherbereiche, in denen Daten, die man im Laufe Ihrer Programmprozeduren benötigt, speichern kann. Man greift auf Variablen anhand ihres Namens zu. Der Inhalt, der in einer Variablen gespeichert ist, wird als "Wert" bezeichnet. Den Wert einer Variablen kann man jederzeit ändern. Um mit Variablen arbeiten zu können, müssen diese zuerst deklariert werden. Variablen werde mit oder ohne das Schlüsselwort "var" deklariert, der Unterschied wird im Abschnitt "Globale und lokale Variablen" erklärt. Einer Variablen kann gleich bei der Deklaration ein Wert zugewiesen werden, muss aber nicht. Eine Wertzuweisung erfolgt durch das "=" - Zeichen hinter dem Variablennamen und dahinter wird der Wert notiert. Jede Variablendeklaration wird mit einem Semikolon abgeschlossen, da sie eine ganz normale Anweisung darstellt. Es können mehrere Variablen in einer Anweisung mit einem Mal definiert werden. Dazu trennt man die einzelnen Variablennamen durch ein Komma.
Es ist bei der Vergabe von Variablennamen unbedingt darauf zu achten, dass es sich nicht um reservierte Wörter handelt. Die Namen dürfen keine Leerzeichen enthalten und außer dem Unterstrich ("_") sind keine Sonderzeichen erlaubt. Umlaute der deutschen Sprache oder ein "ß" sind ebenfalls nicht gestattet. Ob man die Variablennamen groß oder klein schreibt ist jedem selbst überlassen, allerdings unterscheidet JavaScript Groß- und Kleinschreibung und man sollte bei der späteren Verwendung unbedingt darauf achten, wie man die Variable deklariert hat. Bei dem ersten Zeichen des Namens darf es sich außerdem nicht um eine Zahl handeln. Globale und lokaleVariablen Variablen werden in Abhängigkeit ihres Gültigkeitsbereiches in globale und lokale Variablen unterteilt. globale Variablen Globale Variablen werden entweder außerhalb von Funktionen mit dem Schlüsselwort var erzeugt oder ohne dieses Schlüsselwort innerhalb von Funktionen. Sie ist im gesamten Dokument gültig und steht jederzeit zur Verfügung. lokale Variablen Lokale Variablen werden durch die Deklaration der Variablen mit var innerhalb einer Funktion erzeugt. Diese Variablen sind nur innerhalb dieser Funktion gültig. Man spricht in diesem Zusammenhang auch von der "Lebensdauer" von Variablen. Parameter, die einer Funktion übergegeben werden, werden ebenfalls als lokale Variablen behandelt. Variablentypen In Abhängigkeit nach der Art ihres zugewiesenen Wertes unterteilt man Variablen in numerische Variablen, Variablen für Zeichen und Zeichenketten und Variablen für Fallunterscheidungen. Numerische Variablen Bei numerischen Variablen ist der zugewiesene Wert eine Zahl. Beispielsweise ist x in der Deklaration "var x = 2;" eine numerische Variable. Man kann mit ihnen Rechenoperationen durchführen, was man mit Zeichen oder Zeichenketten nicht tun kann. Zahlenwerte werden nicht wie im Deutschen mit einem Dezimalkomma, sondern nach der amerikanischen Schreibweise mit einem Dezimalpunkt angegeben (z.B. die Zahl 3,15 wird in der Variablendeklaration mit x = 3.15; angegeben). Variablen für Zeichen und Zeichenketten Variablen für Zeichen und Zeichenketten haben als Wert ein einzelnes Zeichen oder eine Folge von Zeichen (Zeichenkette). Der zugewiesene Wert steht in einfachen oder doppelten Anführungszeichen (Beispiel: var y = "Hallo Welt!" oder var y ='Hallo Welt!'). Wichtig ist, dass die Zeichenkette mit denselben Anführungszeichen beendet wird, mit denen sie eingeleitet wurde. Nützlich ist die Unterscheidung, wenn man ein Apostroph oder Anführungszeichen innerhalb der Zeichenkette benutzen möchte. Die Anführungszeichen innerhalb der Zeichenkette sollten nicht die sein, die für die Deklaration der Zeichenkette verwendet werden (Beispiel: var y = "Hallo du ‚schöne' Welt!"). Anstelle von Rechenoperationen können Zeichenkettenoperationen, wie zum Beispiel das Addieren von zwei Zeichenketten durchgeführt werden. Variablen für Fallunterscheidungen Variablen für Fallunterscheidungen oder auch Boolesche Variablen genannt geben einen Wahrheitswert, also "wahr" oder "falsch" an. Solche Variablen können als Wert nur true (wahr) oder false (falsch) annehmen. (Beispiel: var x = true;) Umwandlung zwischen den Variablentypen Bei JavaScript kann eine Variable ihren Typ auch während des Programmablaufs ändern. Um den Typen einer Variable umzuwandeln, können Operatoren verwendet werden. Wenn eine Zeichenkette eine korrekt formatierte Zahl enthält, können Sie JavaScript dazu zwingen, die Variable als Zahlenwert zu betrachten. Der Trick besteht darin, die Variable mit eins zu multiplizieren (oder 0 zu addieren). Eine Multiplikation kann nur mit Zahlenwerten durchgeführt werden, so dass JavaScript die Variable in eine Zahl umwandelt - und eine Multiplikation mit eins ändert am Wert der Zahl auch nichts. Außerdem ist es manchmal notwendig, eine Boolesche oder numerische Variable in eine Zeichenkette umzuwandeln. Hierbei muss der Verkettungsoperator "Plus" verwendet werden. Indem eine Variable mit einer leeren Zeichenkette verkettet wird, erhält man als Ergebnis eine Zeichenkette mit dem Variablenwert, ändert aber ansonsten den Wert der Variablen nicht.
JavaScript führt zwar eine automatische Typenkonvertierung durch, aber nicht immer in die gewünschte Richtung: var summe = "4" + 1 //liefert "41" und nicht etwa 5. ![]() 2. Reservierte Wörter und OperatorenReservierte Wörter In JavaScript gibt es so genannte reservierte Wörter. Dies sind Wörter, die nicht für die Vergabe von Funktions- und Variablennamen verwendet werden dürfen. Sie haben in der Programmiersprache bereits vordefinierte Funktionen. Bei den reservierten aber noch nicht verwendeten Wörtern handelt es sich meist um reservierte Wörter der Programmiersprache Java. Dadurch werden potentielle Namenskonflikte bei der Zusammenarbeit von Java und JavaScript vermieden.
Operatoren Operatoren werden im Zusammenhang mit Variablen verwendet. Man unterscheidet - auch je nach Typ der beteiligten Variablen - verschiedene Arten von Operatoren. Zuweisungsoperator Man kann beispielsweise einer Variablen einen Wert zuweisen. Der Zuweisungsoperator dafür ist ein Gleichheitszeichen (=).
Arithmetische Operatoren Diese Art von Operatoren arbeitet mit numerischen Variablen. Man sollten also sicherstellen, dass tatsächlich Zahlenvariablen vorliegen, sonst könnte eine Fehlermeldung erscheinen. Es können auch mehrere Operationen in Reihe notieret werden. Dabei gilt die übliche "Punkt-vor-Strich-Regel".
1 Bei einer Modulo-Division werden zwei Werte dividiert. Das Ergebnis ist jedoch im Gegensatz zur normalen Division nur der Restwert der Division. Wenn Sie z.B. 10 % 4 notieren, erhalten Sie als Ergebnis 2, weil 10 geteilt durch 4 gleich 2 Rest 2 ergibt. Diese 2 ist es, die als Ergebnis einer Modulo-Division herauskommt. Es gibt für die Verwendung der arithmetischen Operatoren verkürzte Schreibweisen:
Die Operatoren ++ und -- können auch direkt vor dem Variablennamen stehen. Der Unterschied liegt in der Reihenfolge, in der diese Operation im Vergleich mit anderen Operationen ausgeführt werden soll. Am Beispiel des Operators ++ soll das einmal durchexerziert werden; -- verhält sich analog. Das Endergebnis des Ausdrucks Anzahl++ ist äquivalent mit dem von ++Anzahl. Einen Unterschied stellt man jedoch fest, wenn der Ausdruck bei einer Zuweisung verwendet wird: Anzahl = 5 var Anzahl_1 = ++Anzahl var Anzahl_2 = Anzahl++ Welchen Wert hat Anzahl1, welchen Wert hat Anzahl2? Die (vielleicht etwas überraschende) Antwort lautet: Anzahl1 hat den Wert 6, Anzahl2 hat auch den Wert 6. Betrachten Sie zunächst die zweite Zeile: var Anzahl1 = ++Anzahl Der ++-Operator steht vor dem Variablennamen, das bedeutet hier, es wird zunächst diese Operation ausgeführt (Anzahl um eins erhöhen), und dann wird der neue Wert (6) der Variablen Anzahl zugewiesen. Bei der dritten Zeile ist es genau andersherum: var Anzahl2 = Anzahl++ Zuerst wird der Variablen Anzahl2 der (aktuelle) Wert von Anzahl zugewiesen, dann wird der Wert von Anzahl um eins vergrößert. Logikoperatoren Logische Operatoren werden zur Formulierung komplexerer Bedingungen für bedingte Anweisungen oder Schleifen verwendet.
Vergleichsoperatoren Vergleichsoperatoren brauchen Sie, wenn Sie zwei Werte vergleichen wollen, z.B. den aktuellen Inhalt einer Variablen mit einem fixen Wert. Vor allem bei bedingten Anweisungen und Schleifen kommt das vor. Vergleichsoperatoren werden meistens bei Zahlenwerten verwendet. Auch bei Zeichenketten sind diese Vergleiche möglich, hier richtet sich die Rangfolge der einzelnen Zeichen (welches Zeichen ist "größer" als ein anderes?) nach dem ASCII-Code des Zeichens.
String-Operatoren Auch mit Zeichenketten kann man "rechnen"; man kann zwei oder mehrere Zeichenketten aneinander hängen. Hierzu wird auch der Plus-Operator (+) verwendet. Es können sowohl Zeichenkettenvariablen als auch direkte Zeichenkettenangaben mit + aneinandergehängt werden.
Bit-Operatoren Um Bit-Operatoren richtig einzusetzen, muss man viel von computer-internen Speichervorgängen verstehen. Deshalb werden die Bit-Operatoren hier nur kurz erwähnt:
Spezielle Operatoren
Rangfolge von Operatoren Unter den Operatoren von JavaScript gibt es eine festgelegte Rangordnung. Wenn man komplexe Rechenoperationen durchführt oder mehrere Bedingungen miteinander verknüpft, gilt bei der internen Auflösung solcher komplexen Ausdrücke die folgende Rangordnung:
![]() 3. Datentypen, Steuerzeichen und besondere NotationenDatentypen Es gibt in JavaScript vier "normale" Datentypen. JavaScript gilt als "untypisiert", man kann alle Daten ohne Deklaration und Zuordnung zu einem Typ verwenden. JavaScript wandelt je nach Notwendigkeit Daten in den jeweils erforderlichen Typ um. Datentypen:
Steuerzeichen Bei Zeichenkettenvariablen gibt es die Möglichkeit, Steuerzeichen in den Variablenwert einzufügen. Steuerzeichen werden durch das Zeichen \ eingeleitet. Dahinter folgt ein Buchstabe, der das Steuerzeichen markiert.
besondere Notationen - Kommentar Bei komplexeren Programmteilen können Kommentare benutzt werden, um einzelne Anweisungen zu erklären und den Programmcode übersichtlicher zu gestalten. Kommentare werden vom JavaScript-Interpreter des WWW-Browsers ignoriert und sind somit für den Anwender nicht sichtbar. Einen wahlweise ein- oder mehrzeiligen Kommentar leiten man mit /*, also einem Schrägstrich, gefolgt von einem Sternzeichen, ein. Mit der umgekehrten Folge */, also einem Sternzeichen, gefolgt von einem Schrägstrich, beendet man den Kommentar. Ein einzeiliger Kommentar wird mit der Zeichenfolge // gestartet. Der Browser ignoriert dann den nachfolgenden Text bis zum nächsten Zeilenende.
- Notation numerischer Werte Zahlen kann man ganz normal notieren. Beachten muss man dabei nur, dass bei Kommazahlen anstelle eines Kommas ein Punkt verwendet werden muss. So wird die Zahl Pi beispielsweise als 3.1415 notiert. Für sehr hohe und sehr niedrige Zahlen und für komplexe Kommazahlen gibt es daneben aber noch andere Notationsmöglichkeiten. Mit e oder E wird die Zehnerpotenz bzw. die Anzahl Nullen bestimmt, die hinter der Zahl vor dem e bzw. E stehen.
Die erste Zahl im Beispiel, 1E1, ist eine 1 mit einer 0 dahinter, also 10. Die zweite Zahl im Beispiel, 1.2345E4, ist eine andere Schreibweise für 12345. Der Dezimalpunkt wird also einfach um so viele Stellen nach rechts verschoben, wie hinter dem E-Zeichen angegeben. Die dritte Zahl im Beispiel, 2e-3, ist eine andere Schreibweise für 0.002. Der Dezimalpunkt wird also einfach um so viele Stellen nach links verschoben, wie hinter dem E-Zeichen angegeben. Diese umgekehrte Richtung wird durch das Minuszeichen bewirkt, dass hinter dem e folgt. ![]() |