Jörg Peschke: Frage zu mehrdimensionalen Arrays in Javascript

Beitrag lesen

Hallo Raphael,
Wie ich selbst erst in diesem Forum gelernt habe (Danke an Struppi u. Co.!) gibt es in JavaScript eigentlich keine Assoziativen Arrays (also Arrays mit Strings als Index) - genau genommen sind das Objekte. Diese kannst du zwar ähnlich wie Arrays behandeln:

var testary = new Array();
testary["test1"] = 5;
testary["test2"] = 6;

, genau genommen entspricht die obere schreibweise aber einem

var testary = new Object();
testary.test1 = 5;
testary.test2 = 6;

Aus diesem Grund funktioniert "testary.length" nicht, weil dies nur auf "echte" Arrays anwendbar ist.
Was du aber z.B. machen kannst, ist eine for...in schleife:

var ObjectSize = 0;
for (var property in testary) {
   ObjectSize++;
}

Nach Durchlaufen dieser Schleife hast Du in "ObjectSize" die Grösse des Objektes (die "länge" deines Arrays, wenn du so willst) stehen.

Gruesse,
Joerg