|   Internetlexikon, Javascript

Eine kuze Einführung über JavaScript
Einführung

JavaScript ist eine Script-Sprache, die innerhalb von HTML-Dokumenten verwendet wird. Sie erweitert die reine HTML-Funktionalität um z.B.

die Überprüfung von Bedingungen (if ... else), z.B. Abfrage der aktuellen Tageszeit, oder des vom Leser dieser Seite verwendete Browsers, das Abarbeiten von Schleifen (for ..., while ...), Reaktion auf Ereignisse, z.B. Mouse-Clicks oder Bewegung der Maus über bestimmte Elemente, ohne dazu mit dem Webserver in Kontakt treten zu müssen, Durchführung von Berechnungen, Überprüfung von Formularen vor dem Abschicken, Änderung des Inhalts mehrerer Frames mit einem Link, dynamisches Ändern von Farben, dynamisches Austauschen von eingebundenen Bildern, dynamisches Bewegen von Layern.

Insgesamt können mit JavaScript interessantere, interaktivere und besser auf den Leser zugeschnittene Seiten gestaltet werden.


JavaScript ist eine sehr kompakte Sprache; der Umfang von JavaScript ist überschaubar. Zum Erlernen der Sprache braucht man kein Programmierer zu sein. Da es sich bei JavaScript um eine Script-Sprache handelt, ist auch kein Compiler zum Übersetzen des Programms erforderlich. Alles was Sie brauchen ist ein einfacher Text-Editor und natürlich ein JavaScript-fähiger Browser, um sich das Ergebnis Ihrer Arbeit anschauen zu können.


zur Geschichte von JavaScript

JavaScript wurde von Netscape zunächst unter dem Code-Namen mocha, dann unter dem Namen Live-Script entwickelt. Dabei hat man sich stark an der Programmiersprache Java von Sun orientiert. Nachdem Netscapes Entwicklung von Sun als "legitimer" Ableger von Java anerkannt wurde, hat man als endgültigen Namen JavaScript gewählt. JavaScript Version 1.0 wurde von Netscape erstmals 1995 in der Browser-Version 2.00 auf den Markt gebracht. Die weiterentwickelte Version 1.1 ist mit der Browser-Version 3.0 verfügbar. Mit Netscape 4.0, folgt JavaScript Version 1.2 . Auf Basis von JavaScript 1.0 hat Microsoft ebenfalls einen Interpreter in den Internet Explorer integriert. Von Microsoft wird die Sprache als JScript bezeichnet. Leider sind die Sprachumfänge nicht vollkommen deckungsgleich. Derzeit gibt es noch keine offizielle Norm für JavaScript. Nach neuesten Pressemeldungen (Ende '96) soll eine solche Normung jedoch bis Mitte 1997 erfolgen. Bis dahin gibt es JScript/JavaScript Incompatibilities. Brandneu: laut Meldung vom 26.06.97 ist der Standard verabschiedet: ECMA-262 !


JavaScript ist nicht Java

Die folgende Gegenüberstellung ist eine (freie) deutsche Übertragung des Originaltextes von Netscape.

JavaScript wird zur Laufzeit interpretiert, Java wird bei der Entwicklung compiliert.   JavaScript ist objekt-basierend und kennt keine Vererbung, Java ist objekt-orientiert, Objekte vererben ihre Eigenschaften. JavaScript-Code ist in das HTML-Dokument integriert und kann auf die (meisten) HTML-Elemente zugreifen. Java-Applets sind getrennt von der HTML-Seite. In JavaScript müssen die Typen der verwendeten Variablen nicht deklariert werden, in Java ist dies erforderlich. In JavaScript werden Objekt-Referenzen erst zur Laufzeit geprüft, in Java bereits während der Compilierung.


JavaScript ist objekt-basierend

Bei einem Objekt handelt es sich um die Zusammenfassung von Werten und Funktionen, die auf diese Werte angewendet werden können. Im Zusammenhang mit dem Objekt werden die Werte als Eigenschaften und die Funktionen als Methoden bezeichnet.


Sicherheitsaspekte

Von Anfang an galt: JavaScript kann nicht auf die Festplatte des Anwenders schreiben. In der im Netscape 2.00 enthaltenen Version war es allerdings noch möglich, mit JavaScript die Verzeichnisse auf der Festplatte zu lesen. Außerdem war es möglich, die History-Liste (also die Liste der bisher vom Anwender besuchten URL's) des Browsers auszulesen. Und schließlich war es in dieser ersten Version möglich, ohne Zutun des Anwenders Mail's - unter dem Namen des Anwenders - an beliebige Adressen zu verschicken. Mit Netscape 2.01 wurden diese drei Möglichkeiten beseitigt.

Über ein gravierendes Sicherheitsloch sowohl in einigen Netscape- als auch MSIE-Versionen wird unter dem Namen Bell Labs Privacy Bug berichtet. Nachdem für diesen Bug Patches von Microsoft und Netscape vorliegen, geht es weiter mit dem Singapore Privacy Bug. Und dann war da noch der Santa Barbara Privacy Bug.
 
Copyright by        kpic