Java Reference
In-Depth Information
HInTErGrunDInFOrMATIOn:
Eine mit
var
angelegte Variable hat ohne
direkte Wertzuweisung bereits den
wohldeinierten
Wert
undeined
. „Wohldei-
niert“ und „undeiniert“ als Übersetzung von
undeined
scheint ein Widerspruch
zu sein, aber
undeined
ist ein sinnvoller Wert, der im Sinn von JavaScript gezielt
verwendet wird. Die reine Existenz einer Variablen verhindert beispielsweise,
dass beim Zugrif auf einen entsprechenden Bezeichner ein Fehler entsteht.
Diese Fehlerreaktion für so einen Fall ist eine der wenigen Vorsichtsmaßnah-
men von JavaScript, die allgemein sehr sinnvoll ist. Wenn Sie einen Variablenbe-
zeichner verwenden, bevor dieser mit
var
eingeführt wurde oder über eine lose
Typisierung ein Wert zugewiesen bekommen hat, meldet der JavaScript-Inter-
preter einen Fehler. In einigen Situationen kann man allerdings ein Skript auch
dann sinnvoll laufen lassen, wenn eine Variable noch keinen Wert zugewiesen
bekommen hat. Die Namen des Bezeichners benötigt man allerdings in irgend-
welchen Konstruktionen und deshalb führt man ihn mit
var
und dem Wert
undeined
ein. Dieser Wert
undeined
tritt aber auch dann auf, wenn bei Funktio-
nen Übergabewerte nicht belegt werden oder man auf Array-Elemente zugreit,
die noch nicht initialisiert wurden.
In Hinsicht auf guten Programmierstil sollten Sie eine neue Variable
immer
(!) mit voran-
gestelltem
var
einführen. Der Quelltext ist besser strukturiert, lesbar und wartbar. Leider
können Sie aber durch die lose Typisierung in JavaScript eben nicht verhindern, dass auch
Variablen ohne diese Auszeichnung entstehen - im schlimmsten Fall zufällig durch einen
Schreibfehler im Bezeichner der Variablen. Umgekehrt sollten Sie jeder Variablen bei so
einem Anlegen bereits einen Vorgabewert zuweisen.
PrAXISTIPP:
Der Einsatz von
var
erlaubt es ebenfalls, innerhalb von Funktio-
nen sogenannte
lokale Variablen
festzulegen. Dies ist im Grunde sogar die
Hauptanwendung für den Einsatz dieses Schlüsselworts. Eine lokale Variable ist
nur in einer Funktion verfügbar, in der sie deiniert ist, und existiert nur so lange
im Speicher, wie die verwendende Struktur existiert. Globale Variablen haben
dagegen als Gültigkeitsbereich das gesamte Skript. Wie schon erwähnt, sind
globale Variablen damit auch in verschiedenen Skript-Containern und sogar ver-
schiedenen externen JavaScript-Dateien gültig, wenn diese gemeinsam in einer
Webseite eingebunden werden. Da wir die Grundlagen von Funktionen noch
nicht genauer eingeführt haben, behandeln wir die näheren Details zu lokalen
Variablen und praktische Beispiele erst im Zusammenhang mit der Einführung
von Funktionen. Aber hier soll zumindest das Schema schon gezeigt werden.
Das Verfahren zum Deklarieren einer lokalen Variablen ist einfach. Lokale Varia-
blen werden innerhalb von Funktionen beziehungsweise vergleichbaren Konst-
ruktionen explizit mit
var
deklariert und können dann nur dort benutzt werden.
Eventuell außerhalb vorhandene Variablen gleichen Namens werden temporär
verdeckt. Genau genommen werden diese globalen Variablen dann temporär
auf
undeined
gesetzt. Beispiel:
Search WWH ::
Custom Search