JavaScript - Nuancen von myArray.forEach vs for-Schleife

Ich habe viele Fragen gesehen, die die Verwendung von empfehlen:

for (var i = 0; i < myArray.length; i++){ /* ... */ }

Anstatt von:

for (var i in myArray){ /* ... */ }

für Arrays aufgrund inkonsistenter Iteration (siehe hier).

Ich kann jedoch nichts finden, was die objektorientierte Schleife zu bevorzugen scheint:

myArray.forEach(function(item, index){ /* ... */ });

Was mir viel intuitiver erscheint.

Für mein aktuelles Projekt ist die IE8-Kompatibilität wichtig, und ich erwäge, sie zu verwendenMozillas PolyfillIch bin mir jedoch nicht zu 100% sicher, wie das funktionieren wird.

Gibt es Unterschiede zwischen dem Standard for loop (erstes Beispiel oben) und der Array.prototype.forEach-Implementierung durch moderne Browser?Gibt es einen Unterschied zwischen modernen Browser-Implementierungen und der oben genannten Mozilla-Implementierung (unter besonderer Berücksichtigung von IE8)?Die Leistung ist weniger ein Problem, sondern lediglich die Konsistenz, über die die Eigenschaften iteriert werden.

Antworten auf die Frage(3)

Ihre Antwort auf die Frage