Diese Dokumentation wählt eine bestimmte Herangehensweise an JavaScript und empfiehlt einen bestimmten JavaScript-Einsatz. Sie gibt Ihnen bewusst eine Arbeitsweise vor und geht von einigen Grundannahmen aus, die im Folgenden offen gelegt werden. Sie müssen mit diesen selbstverständlich nicht einverstanden sein und können Ihren eigenen Weg wählen.
Diese Anleitung ist nicht für Webautoren gedacht, die bloß fremde Fertigscripte in ihre Sites einbauen wollen. Diese Einführung soll dazu befähigen, den Themenkomplex zu verstehen, um schließlich auf hohem Niveau zu programmieren. JavaScript wird nicht als schnell zu erlernende Technik dargestellt, sondern als eine vielseitige Programmiersprache mit erfreulichen Besonderheiten und nervenraubenden Tücken.
Die Geschichte von JavaScript verlief äußerst wechselhaft. Viele der im Laufe der Geschichte entstandenen JavaScript-Tutorials sind veraltet oder empfehlen eine fragwürdige Praxis. Diese Anleitung beschränkt sich auf die aktuelle Situation und erklärt ausgewählte Grundlagen des JavaScript-Gebrauchs.
Diese Einführung wirkt auf den ersten Blick trocken, weil sie derzeit aus viel erklärendem Text und wenig konkretem JavaScript-Code oder Anwendungsbeispielen besteht. Sie möchte zunächst die Grundkonzepte und später ständig benötigte Fertigkeiten vermitteln. Wenn Sie diese Grundlagen nachvollzogen haben, werden Sie den Aufbau von Scripten verstehen können und das Entwerfen eigener Scripte fällt Ihnen viel leichter.
Bevor Sie sich mit JavaScript beschäftigen, sollten Sie sich bereits intensiv mit HTML und CSS auseinandergesetzt haben. Idealerweise haben Sie bereits eine kleine Website mit diesen Web-Sprachen geschrieben. JavaScript tritt nämlich als dritte, zusätzliche Technik hinzu, die auf HTML und CSS aufbaut.
Für einen Einstieg in JavaScript ist es hilfreich, die genauen Aufgaben von HTML und CSS sowie vor allem deren Rolle im modernen Webdesign zu kennen:
Zentral beim Einsatz von HTML und CSS ist die Trennung von Inhalt und Präsentation. Das bedeutet: Informationen zur Darstellung im Browser gehören nicht in den HTML-Code, sondern in ein ausgelagertes Stylesheet. Inhaltliche und strukturelle Informationen gehören ins HTML, wie z.B. »dieser Text ist wichtig«. Eine Auszeichnung im HTML-Code vermittelt diese »Wichtigkeit«, anstatt den Text bloß im Stylesheet z.B. fett zu formatieren.
Der Zweck dieser Trennung ist, dass der HTML-Code möglichst schlank ist und möglichst viel Bedeutung trägt. Man spricht daher auch von semantischem Markup. (»Semantik« ist die Lehre von der Bedeutung, und »Markup« steht für Textauszeichnung.)
Dadurch lassen sich effiziente Stylesheets schreiben, die HTML-Elemente gezielt ansprechen und formatieren. Im HTML-Code bedarf es dann nur wenige zusätzliche Angriffspunkte für das Stylesheet wie etwa div
-Abschnitte sowie id
- und class
-Attribute. Wenn ein zentrales Stylesheet das Layout zahlreicher Dokumente steuert, ist die Präsentation mit geringem Aufwand anpassbar, ohne dass alle betroffenen HTML-Dokumente geändert werden müssen.
Warum ist das für JavaScript wichtig? Je klarer und präziser HTML und CSS angewendet werden, desto einfacher ist es später, JavaScripte zu schreiben. Denn mit JavaScript operieren Sie später auf Grundlage ihrer HTML-Dokumente und Ihre Scripte werden Hand in Hand mit dem Stylesheet zusammenarbeiten. Bevor Sie also die erste JavaScript-Codezeile schreiben, sollten Sie mit HTML und CSS beste Voraussetzungen dafür schaffen. Am Anfang mag das noch theoretisch klingen. Später bekommen Sie ein Gefühl dafür, HTML und CSS so zu organisieren, damit sie effizient mit JavaScript zusammenarbeiten.
Mit HTML und CSS alleine lassen sich nur statische Informationsangebote mit Texten, Bildern und Hyperlinks erstellen. Die meisten Websites bieten jedoch keine festen HTML-Dokumente, sondern interaktive Dienste. Webnutzer durchsuchen Produktdatenbanken, vergleichen Preise, bestellen Artikel, lesen Texte, schauen sich Fotos an, füllen Formulare aus, geben Texte ein, laden Dateien hoch und dergleichen. Diese Funktionen basieren auf Programmen, die auf dem Webserver laufen. Die Programme fragen zumeist Datenbanken ab, verarbeiten die Browser-Anfrage und generieren HTML-Dokumente.
Der Einsatz von JavaScript lohnt sich insbesondere bei solchen interaktiven und personalisierten Webanwendungen, denn JavaScript hat die Möglichkeit, deren Bedienkomfort enorm zu verbessern. Das fängt bei einem Webforum an und geht bis zu Anwendungen, die zum großen Teil aus JavaScript bestehen und sich dadurch wie Desktop-Programme verhalten können.
Die vollen Fähigkeiten von JavaScript entfalten sich also im Zusammenhang mit Server-Anwendungen. Um JavaScript-Techniken wie Ajax einsetzen zu können, sollten Sie daher Kenntnis einer serverseitigen Programmiersprache haben oder zumindest serverseitige Fertigscripte in Betrieb nehmen können. Gängige Einsteigersprachen für serverseitige Dynamik sind PHP, Python und Ruby.