Hallo,
Ehrlich gesagt verstehe ich nicht, warum das untermenu per alert keine "länge" hat, es müsste doch 2 Einträge haben.
Nein. Das "untermenu" ist gleichgesetzt mit "menu.items[i]".
menu.items[i] ist aber seinerseits wieder ein Objekt vom Typ "MyMenu", das besitzt keine Länge. "untermenu.length" würde nur funktionieren, wenn "untermenu" ein Array wäre.
alert (untermenu.items.length);
hingegen müsste Dir die Länge "2" zurück geben, da Du damit auf das Array "items" INNERHALB des Objektes "untermenu" mit den beiden Elementen "Unteroption1" und "Unteroption2" zugreifst.
//warum wieder var untermenu??
Das hätte ich vielleicht der Übersicht halber anders nennen sollen. Es sollte aber trotzdem funktionieren, da das zweite "var untermenu" in einem separaten Block steht, somit das erste "var untermenu" nicht überschreiben kann.
Viele Grüße,
Jörg