Variablen

Der Computer kann sich das Ergebnis einer Berechnung merken und dieses später weiterverwenden, oder der Computer kann den Anwender auffordern seinen Namen einzugeben, um ihn später direkt ansprechen zu können. Hierfür verwendet man Variablen. Eine Variable ist eine Speicherstelle im Computer, in der man unterschiedliche Werte festhalten kann.

Variablen einsetzen

Möchte man z.B. ein Programm in JavaScript schreiben, welches die Temperatur von Celsius in Fahrenheit umrechnet, so kann man den Celsiuswert in einer Variable speichern. So kann man z.B. die Variable für den Celsiuswert celsius nennen und, die für das Ergebnis in Fahrenheit fahrenheit.

So könnte der Skriptteil des Umrechungsprogramms aussehen:

var celsius = 100;

var fahrenheit = 9/5 * celsius + 32;

alert (fahrenheit);

In der ersten Zeile wird festgelegt, dass man eine Variable celsius definiert, die den Wert 100 hat. In der folgenden Zeile steht auf der echten Seite die Formel zur Berechnung des Fahrenheitswerts. In der Formel kann man sehen, dass die Variable celsius verwendet wird, die im Moment der Ausführung den Wert 100 hat. Der Computer berechnet an dieser Stelle also das Ergebnis aus 9/5*100+32. Auf der linken Seite steht die Variable fahrenheit. Ihr wird das Resultat aus unserer Berechnung zugewiesen, also der Wert 212. Um den Inhalt der Variablen fahrenheit in der dritten Zeile auszugeben, müssen wir nun den Namen der Variablen im alert()-Befehl angeben.

Das Programm ist jedoch sehr starr. Für jeden Temperaturwert, den man umrechnen will, muss der Quellcode abgeändert werden. Es gibt aber auch Möglichkeiten, mit denen der Anwender selbst Daten eingeben kann. Diese Eingaben lassen sich in Variablen speichern und mit JavaScript verarbeiten.

Variablen definieren

In dem obigen Beispiel wurden die Variablen celsius und fahrenheit mit dem Schlüsselwort var definiert. Für jede Variable muss ein Computerprogramm Speicherplatz reservieren, um den Inhalt der Variablen speichern zu können. Dies findet im Arbeitsspeicher des Computers statt. Spätestens nach Beendigung des Programms kann der Inhalt der Variablen gelöscht und auch er Speicherplatz wieder freigegeben werden. JavaScript besteht nicht darauf, dass Variablen explizit mit var definiert werden müssen, bevor sie verwendet werden. Variablen werden einfach dann angelegt, wenn sie benötigt werden. Wenn JavaScript auf eine bisher unbekannte Variable stößt, wird der Speicherplatz automatisch reserviert.

Was kann man alles in einer Variable speichern?

var x = 17; ganze Zahlen

var x = 17.5; Kommazahlen

var name = „Wilma“; Strings (= Texte)

var fertig = true; boolesche Werte (true und false)

Im Unterschied zu anderen Programmiersprachen, kann man unterschiedliche Werte in ein und derselben Variable speichern. Jedoch hat das den Nachteil, dass Variablen mit mit kleineren Werten einen relativ großzügig vergebenen Speicherplatz zugewiesen bekommen, wodurch etwas an Effizienz verloren geht. Wenn man ein Programm schreibt, das mit großen Datenmengen umgehen muss, sollte man C, C++, oder Java verwenden, mit denen die Speichernutzung gesteuert werden kann. Die Art und Weise, wie JavaScript mit Datenmengen umgeht, wird loose typinng genannt, im Gegensatz zum strong typing in anderen Programmiersprachen, bei denen man die verwendeten Datentypen konkret festlegen muss. In einigen Fällen kann es beim loose typing jedoch zu Problemen kommen. Dies ist zum Beispiel der Fall, wenn mehrere Variablen unterschiedlichen Typs miteinander in Verbindung gebracht werden. Im Zweifelsfall behandelt JavaScript alle Variablen wie Strings.

So könnte es bei dem folgenden Beispiel ein Problem geben:

var x = „5“;

var y = 12;

wenn man nun diese beiden Variablen addieren möchte, also z=x+y, weiß der Computer nicht, ob es eine Verknüpfung von Strings sein soll, oder das Ergebnis aus 5+12. Da JavaScript, wie bereits genannt, im Zweifelsfall Variablen wie Strings behandelt, würde der Computer y in einen String umwandeln und die beiden Strings verketten, so dass das Ergebnis „512“ wäre. Deshalb ist davon abzuraten Variablen mit unterschiedlichen Datentypen miteinander zu verbinden.

Ausgangswert einer Variablen

Wenn eine neue Variable angelegt wird, weist man ihr meist sofort einen Wert zu, z.B.: var x = 17. Mit dieser Zeile wird die Variable x definiert und darin der Wert 17 gespeichert. Man kann auch sagen, dass die Variable x mit dem Wert 17 initialisiert wird.

Wenn man einer Variable zu Beginn keinen Wert zuweist, dann verwendet JavaScript hierfür den Wert undefined. Dieser Wert gibt an, dass in der Variablen nichts gespeichert ist. Nach der Zeile var y; hat y den Wert undefined.

Wenn man explizit festlegen möchte, dass in der Variablen nichts gespeichert ist, verwendet man null. Der Wert null gibt an, dass die Variable null leer ist. Null ist nicht zu verwechseln mit 0, denn eine Variable, in der die Zahl 0 gespeichert ist, enthält einen Wert.

Variablenname

Die Namensgebung ist relativ frei. Sie sollten so gewählt werden, dass man leicht auf ihren Inhalt schließen kann. Variablennamen können sowohl groß-, als auch kleingeschrieben werden, jedoch muss man sich an die einmal gewählte Schreibweise halten (celsius, Celsius und CELSIUS sind drei verschiedene Variablen). Ich schreibe Variablen immer klein und wenn mehrere Wörter zusammengesetzt werden, dann verwende ich CamelCase also z.B. diesIstEineVariable. Nicht verwendet werden dürfen die sogenannten Schlüsselwörter.

Die folgenden Tabellen zeigen die Schlüsselwörter, die man nicht verwenden kann:

In einem Variablennamen dürfen alle Buchstaben, Zahlen und der Unterstrich vorkommen. Es dürfen keine Satzzeichen, oder Sonderzeichen, wie +, -, $, , (,), Leerzeichen, usw. verwendet werden. Außerdem darf das erste Zeichen keine Zahl sein.

Berechnungen

Im Gegensatz zur Schulmathematik, muss beim Programmieren auf der rechten Seite der zu berechnende Ausdruck stehen, und auf der linken die Variable, die das Ergebnis entgegennimmt. So bedeutet x=2+3: berechne die Summe aus 2 und 3 und speichere das Ergebnis (=5) in der Variablen x. 2+3=x macht für den Computer keinen Sinn, denn es bedeutet: nimm den Wert von x und speichere in in der Variablen ‚2+3‘. Genauso wird x=x+1 nicht als Gleichung, sondern als Zuweisung wahrgenommen.

Auch mit Gleitkommazahlen gibt es durch Rundungsfehler Probleme. So ergibt var x = 0.1+0.2 nicht wie zu erwartend 0.3, sondern 0.30000000000000004. Dies bekommt man aber durch Math.round() in den Griff.

Rechenoperatoren

Wie auch in Java gibt es die folgenden Rechenoperatoren:

Mit dem Modulo-Operator wird der Rest einer Ganzzahldivision ermittelt. So bewirkt var x = 17 % 5, dass x den Wert 2 erhält.

Inkrement und Dekrement Operator

x++; ist gleichbedeutend mit x= x+1 und erhöht den Wert x um 1. Genauso kann eine Variable mit zwei Minuszeichen um eins verringert werden.

y=++x bedeutet, dass x zuerst ums eins erhöht werden soll und anschließend der Wert von x der Variablen y zugewiesen wird.

Zuweisungsoperatoren

Wenn der Wert einer Variablen um 5 erhöht werden soll kann man das zum einen so schreiben: x = x+5, oder x+= 5

Der typeof-Operator

Mit typeof kann man feststellen, von welchem Typ eine Variable ist. So kann man z.B. eines der folgenden Resultate bekommen: undefined, boolean, function, string, number, usw.

Bloggen auf WordPress.com.

Nach oben ↑

Erstelle eine Website wie diese mit WordPress.com
Jetzt starten