Java Reference
In-Depth Information
5.7.1.1■Deklaration mit einem Konstruktor der Klasse Array
Wir halten zuerst einmal fest, dass man ein Array in JavaScript als Objekt versteht und um -
gekehrt auch Objekte intern als Arrays verwaltet werden - als Listen mit einer Aulistung
über Schlüssel-Werte-Paare.
HInTErGrunDInFOrMATIOn:
Da Arrays in JavaScript auch als Objekte zu
sehen sind, gibt es implementierte Methoden und Eigenschaten. Die für eine
Iteration über das Array wichtige Eigenschat ist zum Beispiel
length
, was die
Anzahl der Elemente im Array enthält. Oder genauer - den letzten numerischen
Index. Diese Information kann man in einer Schleife über ein Array (oder auch
die Anzahl der Elemente in einem Objekt) als Abbruchbedingung verwenden.
Zum Erzeugen von Objekten nutzt man in der objektorientierten Programmierung einen
sogenannten
Konstruktor
, der in JavaScript mit einem vorangestellten Schlüsselwort
new
verwendet wird. Der Name des Konstruktors ergibt sich aus dem Namen der Klasse, die die
Eigenschaten und Methoden eines Objekts beschreibt. Das erzeugte Objekt nennt man die
Instanz
der Klasse. Diese Details verfolgen wir ebenfalls noch genauer. Für den Anfang
genügt es, dass ein Array dementsprechend auf diese Weise mithilfe eines Konstruktors
erzeugt werden kann. Diese klassische Form der Array-Erzeugung in JavaScript generiert
eine Instanz der Klasse
Array
. Beispiel:
Listing 5.26■
Ein Datenfeld wird erzeugt.
var x = new Array();
Beachten Sie, dass man in JavaScript in der Regel die Größe eines Arrays (die Anzahl der
enthaltenen Elemente) nicht angibt (obwohl es als numerischer Parameter in
Array()
mög-
lich wäre), da Array-Elemente sowieso „on the ly“ erzeugt werden, wenn es benötigt wird.
5.7.1.2■Deklaration mit einem Array-Literal
Arrays können Sie in JavaScript auch unter Verwendung eines sogenannten
Array-Literals
erzeugen und damit auf die Notation eines expliziten Konstruktors verzichten. Sie verwen-
den dann auch nicht das Schlüsselwort
new
. In dem Fall spricht man von einer
deklarativen
Erzeugung
. Wie erwähnt muss man dem System aber irgendwie kenntlich machen, dass
eine Deklaration nicht einfach eine Variable neu anlegt, sondern ein Datenfeld. Dazu ver-
wendet man in JavaScript (und vielen anderen Sprachen) beim zugewiesenen Literal eckige
Klammern - das kennzeichnet dann ein Array-Literal. Sie weisen bloß einer Variablen bei
der Deklaration in eckigen Klammern eine Reihe von Werten zu. Die eckigen Klammern
können auch leer bleiben. Beispiele:
Listing 5.27■
Anlegen von Arrays mit Array-Literalen
var x = [];
var primzahlen = [1, 2, 3, 5, 7, 11, 13, 17, 19, 23, 29];
var person = ["Hans", "Dampf", 42];
Die Anzahl der zugewiesenen Werte legt indirekt die anfängliche Größe des Datenfelds fest.
Das Array wird dabei automatisch numerisch indiziert. Im ersten Fall ist die Anfangsgröße
Search WWH ::
Custom Search