Java Reference
In-Depth Information
Ausnahmebehandlung gibt es in JavaScript schon einige Zeit. Bereits seit der Verabschie-
dung von JavaScript 1.4 steht das Ausnahmekonzept zur Reaktion auf kritische Situationen
zur Verfügung. Genau genommen ist das Konzept aber erst in JavaScript 1.5 in der heutigen
Form vollständig umgesetzt worden. Dennoch sollten Sie daran denken, dass auch JavaScript
1.5 schon seit dem Jahr 2000 oiziell zur Verfügung steht. Eigentlich sollte also Ausnahme-
behandlung in JavaScript bereit eine über zehnjährige Tradition haben und voll etabliert
sein. Sie werden dennoch in der Praxis nicht viele Skripten inden, die damit arbeiten (vor
allen Dingen keine älteren Skripten). Das liegt zum Teil daran, dass viele Webseitenerstel-
len mit JavaScript „nebenher“ programmieren bzw. vor allen Dingen in der Vergangenheit
programmiert haben. Solche Webseitenersteller haben sich in diejenigen Parts von Java-
Script gar nicht eingearbeitet, die eher von professionellen Programmierbereichen kom-
men. Der andere Aspekt war in der Vergangenheit die teilweise fehlende Unterstützung von
Ausnahmebehandlung in verbreiteten Browsern. Viele Webseitenersteller wollten keine Be-
sucher verprellen und haben deshalb von der Verwendung der Ausnahmebehandlung Ab-
stand genommen. Und nicht zuletzt gab es im Webumfeld lange Zeit nur wenige Gründe,
warum man mit Ausnahmebehandlung arbeiten sollte. Damit gewann die Ausnahmebehand-
lung erst seit etwa 2005/2006 durch die Popularität von AJAX auch im Umfeld der Webpro-
grammierung mit JavaScript Bedeutung. Das zuverlässige Erzeugen eines XMLHttpRequest -
Objekts zur asynchronen Kommunikation bei AJAX nutzt mehr oder weniger zwingend die
Ausnahmebehandlung. Es gibt aber mittlerweile noch diverse andere nützliche Anwendun-
gen. Wir werden gleich zum Beispiel ein Verfahren zur Trennung der inkompatiblen Ereig-
nisbehandlungskonzepte von Microsot und dem Rest der Browserwelt die Ausnahmebe-
handlung einsetzen.
9.4.1■Was ist eine Ausnahme?
Besprechen wir nun, was eigentlich eine Ausnahme im Verständnis von JavaScript darstellt.
In allen modernen Programmiersprachen indet man heutzutage Konzepte, die auf Ereig-
nisse beziehungsweise allgemein spezielle Situationen beim Ablauf des Programms oder
Skripts eine Reaktion ermöglichen oder gar erzwingen. Die prinzipielle Idee baut massiv
auf der objektorientierten Programmierung auf und wird in mächtigen Umgebungen wie
Java oder .NET als essenzieller Bestandteil der Umgebung bereitgestellt. Aber auch
JavaScript orientiert sich daran. Wir haben das ja gerade mit dem Konzept von Ereignisob-
jekten und deren Verwertung gesehen. Und was war da passiert? Wenn während der Aus-
führung eines Programms oder Skripts eine „bemerkenswerte“ Situation eintritt, wird vom
ausführenden System automatisch ein Ereignisobjekt erzeugt. Dieses kann man auch allge-
meiner als ein Mitteilungsobjekt bezeichnen. Solch ein Mitteilungsobjekt enthält alle rele-
vanten Informationen, was für eine Situation gerade aufgetreten ist, wo und warum. Neben
den klassischen Ereignissen wie das Abschicken von Formulardaten, die grundsätzliche
Be wegung der Maus oder das Drücken einer Taste auf der Tastatur durch den Anwender
können „bemerkenswerte“ Situationen desgleichen die fehlerhate Erzeugung eines Objekts,
ein mathematischer Fehler bei einer Berechnung (etwa die Division durch den Wert 0) oder
etwas Ähnliches sein.
Für das Entstehen von solchen Mitteilungsobjekten ist es nun egal, um was für einen
genauen Typ es sich handelt. Im Laufzeitsystem von JavaScript wird die Erzeugung von
Search WWH ::




Custom Search