Java Reference
In-Depth Information
HInWEIS: Unter http://www.ecmascript.org/es4/spec/overview.pdf inden
Sie eine gute Quelle, um die diskutierten Erweiterungen im Detail zu sehen.
13.6.1■Explizite Datentypen und der use strict-Modus
Insbesondere die explizite Deklaration von Datentypen für Variablen und Rückgabewerte
von Funktionen steht schon lange auf der Agenda und ganz oben auf der Wunschliste erfah-
rener JavaScript-Programmierer. So etwas wie das Folgende sollte also in JavaScript möglich
sein:
Listing 13.26■ Typfestlegung einer Variablen
var a:Integer; //Variable a vom Typ Integer
Mit JavaScript 2.0 wird diese Möglichkeit mit ziemlicher Sicherheit geschafen. Die Bezeich-
ner der Datentypen werden sich an vorhandenen Referenzdatentypen in Sprachen wie C#
oder Java und natürlich auch JavaScript (wenn schon vorhanden - etwa String ) orientieren.
Auch bei Funktionen soll die Deinition des Rückgabe- und Parametertyps oder die Beschrei-
bung von optionalen Parameterwerten möglich sein. Die Typen werden wie bei Variablen
durch einen Doppelpunkt getrennt an den jeweiligen Parameter bzw. an die Funktion gehef-
tet und optionale Parameter erhalten mit einer Zuweisung einen Vorgabewert. Beispiel:
Listing 13.27■ Funktionsdeklaration mit Datentypen und Vorgabewerten
function f(a:Integer, b:Integer = 1, c:Integer = 1):Integer {
return a + b + c;
}
13.6.1.1■Die Option „use strict“
In Verbindung mit der Angabe von "use strict"; am Anfang des Skripts oder einer Funk-
tion fordert dies nach dem Konzept verschiedene Dinge im Umgang mit Variablen. So ist
eine explizite Deklaration von Variablen (mit var ) notwendig und der Einsatz verhindert,
dass eine Variable mehrfach deklariert werden darf.
Beachten Sie, dass die Anweisung "use strict"; auch heute schon angegeben werden
kann, aber nur bei einigen neuen Browsern funktioniert und auch nicht alle wünschenswer-
ten Beschränkungen damit gesetzt werden. Da es sich aber nur um einen String handelt,
wird die Option auch in alten Browsern ungefährlich sein und nicht schaden. Wenn man
diese Verhaltensweisen im Umgang mit Variablen auch heute schon haben möchte, dann
spricht wenig dagegen, das bereits zu notieren 2 . Betrachten wir das nachfolgende Skript, in
dem wir zwar nicht mit expliziten Datentypen arbeiten (das geht in aktuellen Browsern
überhaupt noch nicht), aber mit der Anweisung "use strict"; :
2 Wobei man durchaus das aktuelle Verhalten von JavaScript im Umgang mit Variablen und Datentypen auch gezielt
ausnutzen kann. Viele erfahrene JavaScript-Programmierer haben aus der Schwäche von JavaScript eine Stärke
gemacht und verlassen sich auf diese.
 
Search WWH ::




Custom Search