SELFHTML/Quickbar JavaScript Sprachelemente

| ## Variablen und Werte
| Variablen definieren Werte von Variablen ändern

## Variablen definieren

Anzeigebeispiel: So sieht's aus

Variablen sind Speicherbereiche, in denen Sie Daten, die Sie im Laufe Ihrer Programmprozeduren benötigen, speichern können. Der Inhalt, der in einer Variablen gespeichert ist, wird als "Wert" bezeichnet. Sie können den Wert einer Variablen jederzeit ändern. Um mit Variablen arbeiten zu können, müssen Sie die benötigten Variablen zuerst definieren.

### Beispiel:

    <html>
    <head>
    <title>Sinn des Lebens zum Quadrat</title>
    <script language="JavaScript">
    <!--
      var Hinweis = "Gleich werden Quadratzahlen ausgegeben";
      alert(Hinweis);

      function SchreibeQuadrate()
      {
          var SinnDesLebens = 42;
          var i, x;
          var Satzteil = "Das Quadrat von ";
          for(i=1; i <= SinnDesLebens; ++i)
            {
              x = i * i;
              document.write(Satzteil + i + " ist " + x + "<br>");
            }
      }
    // -->
    </script>
    </head>
    <body onLoad="SchreibeQuadrate()">
    </body>
    </html>

### Erläuterung:

Variablen können mit Hilfe des reservierten Wortes `var` definiert werden. Dieses Schlüsselwort ist zwar nicht zwingend notwendig, macht den Quellcode aber lesbarer, da es signalisiert, daß an der betreffenden Stelle eine neue Variable definiert wird. Jede Variablendefinition wird mit einem Strichpunkt abgeschlossen, genau wie eine Anweisung (betrachten Sie eine Variablendefinition einfach als eine Anweisung!).

Es gibt globale Variablen und Variablen, die innerhalb einer Funktion definiert sind. Im obigen Beispiel ist die Variable `Hinweis` global, während die Variablen `SinnDesLebens`, `i`, `x` und `Satzteil` funktionsgebunden sind. Eine globale Variable steht jederzeit zur Verfügung, während eine Variable, die innerhalb einer Funktion definiert wird, nur innerhalb dieser Funktion zur Verfügung steht. Man spricht in diesem Zusammenhang auch von der "Lebensdauer" von Variablen.

Variablen können mit oder ohne weitere Wertzuweisung definiert werden. Im obigen Beispiel wird etwa der Variablen `SinnDesLebens` bei der Definition gleich ein Wert zugewiesen, nämlich 42. Auch die Variable `Satzteil` erhält eine anfängliche Wertzuweisung, nämlich den Wert "Das Quadrat von ". Die Variablen `i` und `x` werden dagegen nicht mit einem Anfangswert versehen. Beim Zuweisen eines Wertes notieren Sie hinter dem Variablennamen ein Istgleichzeichen und dahinter den Wert, den Sie der Variablen zuweisen wollen.

Sie können mehrere Variablen auf einmal definieren, so wie die beiden Variablen `i` und `x` im Beispiel. Dazu trennen Sie die Variablennamen durch Kommata. Das ist natürlich auch in Verbindung mit zugewiesenen Anfangswerten möglich.

Es gibt numerische Variablen und Variablen für Zeichen bzw. Zeichenketten. Im obigen Beispiel sind die Variablen `SinnDesLebens`, `i` und `x` numerische Variablen. Die Variablen `Hinweis` und `Satzteil` sind dagegen Zeichenkettenvariablen. Dies ist daran erkennbar, daß der ihnen zugewiesene Wert, ein Text, in Anführungszeichen gesetzt wird. Sie könnten z.B. eine Variable `Nummer = 1;` und eine Variable `Zeichen = "1";` definieren. Der Unterschied ist, daß Sie mit der Variablen `Nummer` Rechenoperationen anstellen können, mit der Variablen `Zeichen` nicht. Dafür können Sie mit Zeichenkettenvariablen Zeichenkettenoperationen durchführen, etwa das Extrahieren einer Teilzeichenkette, was mit numerischen Variablen nicht möglich ist.

### Beachten Sie:

Bei der Vergabe von Variablennamen gelten die Regeln für selbstvergebene Namen.

Variablen in JavaScript sind nicht so streng "getypt" wie in vielen anderen Programmiersprachen. Außer der Unterscheidung von numerischen und nicht-numerischen Variablen gibt es keine Unterscheidung. Kommazahlen und Ganzzahlen benötigen keine unterschiedlichen Typen. Der Inhalt von numerischen Variablen kann ohne vorherige Konvertierung in Zeichenketten auf den Bildschirm oder in Meldungsfenster geschrieben werden.

## Werte von Variablen ändern

Wertänderungen von Variablen sind das A & O bei der Programmierung. Sie werden nur dann erfolgreich eigene Programme schreiben können, wenn Sie jederzeit den Überblick haben, was in einer Variablen an einem bestimmten Punkt des Programmablaufs steht. Besonders, wenn Sie mit bedingten Anweisungen oder Schleifen arbeiten, werden Sie schnell feststellen, wie leicht der Überblick über den aktuellen Zustand einer Variablen verloren gehen kann.

### Beispiel:

    <html>
    <head>
    <title>Sinn des Lebens zum Quadrat</title>
    <script language="JavaScript">
    <!--

      function SchreibeQuadrate()
      {
          var SinnDesLebens = 42;
          var i, x;
          var Satzteil = "Das Quadrat von ";
          document.close();
          document.open("text/html");
          for(i=1; i <= SinnDesLebens; ++i)
            {
              x = i * i;
              document.write(Satzteil + i + " ist " + x + "<br>");
            }
      }
    // -->
    </script>
    </head>
    <body onLoad="SchreibeQuadrate()">
    </body>
    </html>

### Erläuterung:

Das obige Beispiel leert das Anzeigefenster des WWW-Browsers und schreibt HTML-formatiert in das leere Fenster untereinander die Quadrate von 1 bis zum Sinn des Lebens (42). Dazu dienen Methoden des Objekts `document`.

Die Variablen `SinnDesLebens` und `Satzteil` werden während des Programmablaufs zwar benutzt, aber ihr Wert wird nicht geändert. Die Variablen `i` und `x` dagegen ändern ihren Wert laufend. Das liegt daran, daß sie innerhalb einer for-Schleife bei jedem Schleifendurchlauf neue Werte zugewiesen bekommen.

Die Wertzuweisung erfolgt, indem Sie den Variablennamen, dahinter ein Istgleichzeiten und dahinter den gewünschten Wert notieren. Bei dem Wert, den Sie zuweisen, können Sie anstelle einer bestimmten Zahl oder einer Zeichenkette auch Namen anderer Variablen notieren. So wird im Beispiel der Variablen `x` bei jedem Schleifendurchlauf als Wert das Ergebnis der mit sich selbst multiplizierten Variablen `i` zugewiesen.

weiter: | Objekte, Eigenschaften und Funktionen
zurück: | Allgemeine Notationsregeln

SELFHTML/Quickbar JavaScript Sprachelemente

© 1998 Stefan Münz, muenz@csi.com