Variablen dienen der Speicherung von Werten. Sie stellen damit die von einem Programm zur Verarbeitung benötigten Daten dar und spiegeln einen bestimmten Bearbeitungszustand wieder. JavaScript kennt drei verschiedene Standarddatentypen. Dies sind im Einzelnen Variablen vom Typ Number zur Speicherung von Zahlenwerten (JavaScript unterscheidet nicht zwischen Gleitkommazahlen und ganzzahligen Werten), Variablen vom Typ String zur Speicherung von Zeichenketten und zuletzt Variablen vom Typ Boolean, der zur Speicherung von Wahrheitswerten dient (TRUE oder FALSE).
Variablennamen können individuell vergeben werden, müssen sich allerdings an die in JavaScript vorgegebenen Konventionen zur Vergabe von Namen halten. Bevor lesend auf eine Variable zugegriffen werden kann muss diese zumindest definiert sein. Ist eine Variable zum Zeitpunkt des Zugriffs noch nicht definiert, so führt dies zu einem Programmfehler.
Das folgende Beispiel prüft zunächst, ob die Variable t bereits mit einem Wert initialisiert wurde. Dies ist hier nicht der Fall und es erfolgt somit keine Ausgabe von t. Statt dessen wird mit der Write-Methode eine Meldung ausgegeben, die besagt, dass die Variable bislang nicht definiert ist.
Danach wird die Variable t mit dem Wert 12 initialisiert und der gespeicherte Wert und der Datentyp, der über typeof ermittelt wird, durch den entsprechenden JavaScript Code ausgegeben. Als nächstes wird die Variable u ohne Initialisierung (Zuweisung eines Wertes) definiert. Auch hier wird dann der Inhalt (nicht initialisierte Variablen enthalten den Wert „undefined”) und der Datentyp des in der Variablen gespeicherten Wertes ausgegeben. Nachdem dann eine Zeichenkette zugewiesen wurde erfolgt erneut eine Ausgabe.
<script language="javascript" type="text/javascript"> <!-- // JavaScript-Bereich für ältere Browser auskommentieren // Existiert die Variable t? if (typeof t != 'undefined') // Dann soll deren Inhalt ausgegebene werden document.write ('Inhalt von t vor der Definition: ' + t + '<br>'); else // Ansonsten entsprechende Meldung ausgeben document.write ('t ist noch nicht definiert!<br>'); // Variable t durch Zuweisung eines Wertes definieren t = 12; // Ausgabe des Inhalts von t... document.write ('t nach der Definition: ' + t + '<br>'); // und dessen Datentyp document.write ('Typ der Variablen t: ' + typeof t + '<br>'); // Weitere Variable ohne Zuweisung eines Wertes definieren var u; document.write ('Wert von u: ' + u + '<br>'); document.write ('Typ der Variablen u: ' + typeof u + '<br>'); // Wert zuweisen und damit den Datentyp festlegen u = 'Inhalt von u'; document.write ('Wert von u: ' + u + '<br>'); document.write ('Typ der Variablen u: ' + typeof u + '<br>'); // --> </script>
Variablen können für den globalen oder aber den lokalen Zugriff definiert werden. Eine globale Variable wird meist ausserhalb von Funktionen definiert und ist für alle im Script enthaltenen Funktionen und Instanzen von Objekten verfügbar. Dagegen wird eine lokale Variable innerhalb einer Funktion definiert und ist auch nur innerhalb der Funktion und in untergeordneten Funktionen sichtbar. Diesen Mechanismus der Sichtbarkeit von Variablen demonstriert das folgende Script.
Mit der Methode write des Document-Object werden auch hier die Werte der Variablen ausgegeben, die im entsprechenden Scriptteil sichtbar sind. Im Code finden Sie Hinweise zu den genutzten Variablen und deren Sichtbarkeit.
<script language="javascript" type="text/javascript"> <!-- // JavaScript-Bereich für ältere Browser auskommentieren // Funktion zur Demonstration der Sichtbarkeit von Variablen function testfunktion () { // Folgende Variable ist von nunan global verfügbar r = 13; // Die nächste dagegen nur innerhalb der Funktion und in // Funktionen sichtbar, die innerhalb der Funktion definiert // sind. var s = 'Test'; // Ausgabe der Variablen, die ausserhalb der Funktion // (global) definiert sind document.write ('t in testfunktion: ' + t + '<br>'); document.write ('u in testfunktion: ' + u + '<br>'); // Folgende Funktion sieht auch lokale Variablen, die // in der übergeordneten Funktion als lokal definiert // wurden. function testfunktion2 () { // Lokale Variable j var j = 'Test2'; // In testfunktion definierte lokale Variable ausgeben document.write ('s in testfunktion2: ' + s + '<br>'); } // Untergeordnete Funktion ausführen testfunktion2 (); // Auch hier ist j wieder nicht ansprechbar if (typeof j != 'undefined') document.write ('j in testfunktion: ' + j + '<br>'); } // Testfunktion aufrufen testfunktion (); // Die in der Funktion definierte Varaible r ist global sichtbar document.write ('Wert von r: ' + r + '<br>'); // Anders als r ist s nur lokal innerhalb der Funktion sichtbar // und die folgende Abfrage liefert FALSE (s wird nicht ausgegeben) if (typeof s != 'undefined') document.write ('Wert von s: ' + s + '<br>'); // --> </script>
Bei der Definition selbstdefinierter Objekte kann der Entwickler entscheiden, ob Eigenschaften (Variablen, die zu einem Objekt gehören) und Methoden eines Objekt von aussen sichtbar sein sollen oder nicht. Im folgenden Beispiel wird ein Objekt mit dem Namen Person definiert, welches über Eigenschaften und eine Methode verfügt. Von aussen sichtbare Eigenschaften und Methoden, auf die über eine Objektinstanz zugegriffen werden können soll, müssen mit dem Präfix „this.” definiert werden. Werden Methoden oder Variablen ohne diesen Präfix definiert, so ist der Zugriff nur innerhalb des Objekts möglich. Ist eine Eigenschaft von aussen nicht ansprechbar, so liefert ein Zugriff auf diese Eigenschaft den Wert „undefined”.
<script language="javascript" type="text/javascript"> <!-- // JavaScript-Bereich für ältere Browser auskommentieren // Objekt Person definieren function Person (n, a, g) { // Lokale Variable zur Speicherung des Namen var name = n; // Öffentliche Eigenschaft (Variable) zur Speicherung des Alters this.alter = a; // Auch groesse ist eine private Variable, auf die von // aussen nicht zugegriffen werden kann. groesse = g; // Folgende Methode ist öffentlich aufrufbar und // gibt Eigenschaften des Objekts aus. this.print = function () { document.write ('P(' + name + ', ' + this.alter + ', ' + groesse + ')'); } } // Instanziierung eines Objekts vom Typ Person var p = new Person ('Walter', 75, 1.78); // Zugriff auf die Eigenschaften (Variablen) des Objekts // Name ist lokal und deshalb nicht zugänglich document.write ('Wert von p.name: ' + p.name + '<br>'); // Zugriff auf das Alter ist möglich document.write ('Wert von p.alter: ' + p.alter + '<br>'); // Auch auf groesse kann von aussen nicht zugegriffen werden document.write ('Wert von p.groesse: ' + p.groesse + '<br>'); // Aufruf der öffentlichen Methode print p.print (); // --> </script>
Hallo, ich bin auf der Suche nach einem Script, mit dem ich einen Leser für Audio-Spuren in eine Html-Webseite einfügen kann. Ich brauche dabei ... » mehr
von Finlay am Sonntag, 22. Januar 2012 22:52 in JavaScript - bisher 1 AntwortHallo,
wenn es um einen MP3-Player geht, dann sollte jplayer das Richige sein. Einfach mal den Suchschlitz der Suchmaschine Deiner Wahl nutzen. ... » mehr
ich habe hier einie gallerie die funktioniert problem los aber hat noch kein über belnd effect jedoch würde ich diesen gerne einfügen aber ich habe ... » mehr
von faebe am Freitag, 20. Januar 2012 20:19 in JavaScript - noch nicht beantwortetHallo! Vielen Dank für das super kommentierte Script-Beispiel zur Weiterverarbeitung von XML-Dateien per JavaScript: ... » mehr
von gn0me am Freitag, 11. März 2011 19:03 in JavaScript - noch nicht beantwortetHi, zu erst mal ein Lob an Eure Galerie. Nun habe ich allerdings eine Frage um die Galerie eventuell zu erweitern. Derzeit wird auf meiner Seite ... » mehr
von G-RuN am Dienstag, 25. Januar 2011 17:13 in JavaScript - bisher 8 AntwortenHat sich erledigt. Mir haben noch die Zuweisung von der Variablen anzahl_bilder und anzahl_thumbnails gefehlt.
Grüße, ... » mehr
Hallo, ich habe hier ein kleines Problem und ... » mehr
von Kallchen am Freitag, 14. Januar 2011 23:07 in JavaScript - bisher 3 Antwortenwindow.location = "_blankeineseite.html";
Das funktioniert auf keinen Fall. Die Location-Eigenschaft muss eine URL enthalten und wird bei ... » mehr
¬ Menu
¬ Gratis Download
¬ Seminare
¬ Yoga
¬ Insolvenzrecht
¬ News
15.08.2008Schleifen in PHP: Die While-Schleife » mehr 13.08.2008Nutzung von Variablen unter PHP: Definition, Sichtbarkeit und vordefinierte Variablen » mehr 11.08.2008Ausgabe von Datum und Zeit mit PHP nach Konvertierung in ein String » mehr Eine vollständige News-Liste ist auf der News-Seite zugänglich.
¬ Foren
¬ Buchtipp

JavaScript, Das umfassende Referenzwerk
Weitere JavaScript Literaturtipps finden Sie unter JavaScript Bücher
Webdesign •
Beratung Internetseite •
Programmierung Internetseite