Java Reference
In-Depth Information
5.8.6■Lokale Variablen in Funktionen
Kommen wir noch einmal zum Begrif der lokalen Variablen . Wie gerade mehrfach er -
wähnt, sind Parameter an Funktionen (und auch Methoden) innerhalb des Funktionskör-
pers als lokale Variablen verfügbar. Außerhalb des Funktionskörpers sind sie nicht sichtbar.
Aber Sie können auch innerhalb des Funktionskörpers weitere lokale Variablen deinieren.
Grundsätzlich macht man das auch sehr ot.
Das Verfahren zum Deklarieren einer lokalen Variablen ist einfach. Lokale Variablen wer-
den innerhalb von Funktionen beziehungsweise vergleichbaren Konstruktionen explizit
mit var deklariert und können dann nur dort benutzt werden. Eventuell außerhalb der
Funktion vorhandene (globale) Variablen gleichen Namens werden temporär verdeckt .
Genau genommen werden diese zeitweilig auf undeined gesetzt, aber diese Spitzindigkeit
spielt keine Rolle. Beispiel (kap5_24.html):
Listing 5.47■ Anwendung von lokalen Variablen
...
<script type="text/javascript">
var a = "abc"; // globale Variable a
function meineFktion() {
var a = 42;
var b = 1;
document.write("Wert der lokalen Variablen a: " + a +
"<br />Der Wert der globalen Variablen ist verdeckt.<hr />");
document.write("Wert der lokalen Variablen b: " + b + "<hr />");
}
</script>
</head>
<body>
<h1>Lokale Variablen in Funktionen</h1>
<script type="text/javascript">
document.write("Wert der globalen Variablen a: " + a + "<hr />");
meineFktion();
document.write("Wert der globalen Variablen a: " + a + "<hr />");
document.write("Wert von b: " + b + "<br />"); // ACHTUNG - FEHLER
</script>
</body>
</html>
Im Skriptbereich im Header der Seite wird zuerst eine Variable a eingeführt. Dies erfolgt
außerhalb einer Funktion und damit ist sie global im ganzen Skript verfügbar, auch inner-
halb jeder Funktion, es sei denn, sie wird dort verdeckt. Und das machen wir in der Funk-
tion meineFktion() als Erstes. In der Funktion wird nämlich eine Variable mit gleichem
Bezeichner erneut deiniert. Damit ist die globale String-Variable a in dieser Funktion nicht
mehr verfügbar und stattdessen steht die lokale numerische Variable über den Bezeichner
a zur Verfügung. Die Ausgabe in der Funktion beweist das. In der Funktion wird noch eine
zweite lokale Variable b eingeführt. Auch darauf greifen wir innerhalb der Funktion zu. Die
ersten Zugrife im Skriptbereich im Körper der Webseite zeigen, dass außerhalb der Funk-
tion meineFktion() die globale String-Variable a verfügbar ist und nicht durch eine Ver-
wendung einer lokalen Variablen gleichen Namens in einer Funktion verändert wird. Die
beiden Bereiche sind strikt getrennt.
 
Search WWH ::




Custom Search