Hallo,
Als globale Funktion ist das nur Handwerk
while ( iterOwn(obj,key) ) { BLOCK }
Eigenschaften kann man mit for-in durchlaufen, aber eine for-in-Schleife nicht nach einem Durchlauf abbrechen, um beim nächsten Durchlauf an dieser Stelle weiterzumachen. Das kann man natürlich, wenn man irgendwo die letzte Property speichert, nur wo will man sie sinnvollerweise speichern? Außerdem, wie setzt die iter-Funktion die lokale Variable? Es ginge höchstens while (wert = iter(obj)) oder so etwas.
Christophs umständliches Beispiel mit with löst das natürlich, aber sieht ganz anders aus als obiger einfacher Code.
Gegenfrage weiter unten sprichst du glaube ich davon den Object Konstruktor zu verändern, könntest du das für uns präzisieren?
function Object () {}
Mathias