Hallo Jeena,
(sofern oldarray ein beliebiges Objekt es Typs Array ist, wenn Du lieber mit
Object
arbeitest,
Es ging mir vor allem darum ein "assoziatives Array" mit Strings als Keys zu flippen, so weit ich JavaScript verstanden habe muss man das über Objekte und ihre Eigenschaften abbilden, oder nicht?
Bei SELFHTML ist unter Beachten Sie im Abschnitt <http://de.selfhtml.org/javascript/objekte/array.htm#assoziative_arrays@title=JavaScript: Assoziative Arrays> einiges an Erklärung dazu - und wenn Du wirklich assoziative Arrays flippen willst (indizierte kann man ja genauso flippen, sofern die Werte nur Zahlen sind), dann dürfte Object wohl besser sein, als Array. Du kannst aber auch Array verwenden, es bringt nur keinen Vorteil gegenüber Object. Wobei sich dann natürlich die Frage stellt, ob man flip() wirklich als Prototypen für *alle* Objekte definieren will.
Die Geschichte hat nur einen Nachteil: [...]
Ok, jetzt weiß ich welche Nachteile diese Form hat, nur verstehe ich noch nicht ganz welche Vorteile sie hat... Das einzige was mir einfällt ist, dass man es dann auch wie alle anderen Methoden von Objekten anwenden kann ohne da jetzt deshalb einen Unterschied deshalb machen zu müssen. Wobei ich noch nicht so ganz durchblicke warum das einfacher ist ;-).
Es ist wohl einfach ne Stilfrage, ob Du das so haben willst (bzw. wenn Du's als prototype für Object definierst, haben alle Objekte diese Methode, was problematisch sein könnte).
Viele Grüße,
Christian