The for each...in
statement is deprecated as the part of ECMA-357 (E4X) standard. E4X support has been removed, but for each...in will not be disabled and removed because of backward compatibility considerations. Consider using for...of
instead. (Please refer to Bug 791343.)
Die for each...in
Schleife wiederholt die definierteVariable in jeder Instanz eines Objekts. Für jedes einzelne Vorkommen wird der bestimmte Befehl ausgeführt.
Syntax
for each (variable in object) {
statement
}
variable
- die Variable, die innerhalb des durchsuchten Projekts gesucht wird. Diese kann durch das Schlüsselwort var bestimmt werden. Die Variable wird Lokal innerhalb der Funktion definiert, nicht für die ganze Schleife.
object
- das Objekt, innerhalb dessen die Werte gesucht werden.
statement
- am Befehl, der bei jedem auftreten der gesuchten Eigenschaft ausgeführt wird. Um mehrere Befehle innerhalb der Schleife auszuführen, nutzen Sie für deren Gruppierung das
Block
statement ({ ... }
) .
Beschreibung
einige Eigenschaften werden nicht in der Schleife durchsucht. Diese umfassen alle standardmäßigen Methoden von Objekten, beispielsweise die String-Methode indexOf. Es werden jedoch alle vom Nutzer definierten Werte durchsucht.
Beispiele
Nutzung von for each...in
Warnung: Nutzen Sie eine derartige Schleife niemals in Arrays. Nutzen Sie diese nur für Objekte. Weitere Einzelheiten bei for...in
.
der folgende Code Ausschnitt durchsucht die Eigenschaften eines Objektes und errechnet ihre Summe:
var sum = 0; var obj = {prop1: 5, prop2: 13, prop3: 8}; for each (var item in obj) { sum += item; } console.log(sum); // logs "26", which is 5+13+8
Spezifikationen
Kein teil der ECMA-262 Spezifikation. Implementiert in JavaScript 1.6 und deprecated.
Browserkompatibilität
Feature | Chrome | Firefox (Gecko) | Internet Explorer | Opera | Safari |
---|---|---|---|---|---|
Basic support | Nicht unterstützt | 1.5 (1.8) | Nicht unterstützt | Nicht unterstützt | Nicht unterstützt |
Feature | Android | Chrome for Android | Firefox Mobile (Gecko) | IE Mobile | Opera Mobile | Safari Mobile |
---|---|---|---|---|---|---|
Basic support | Nicht unterstützt | Nicht unterstützt | 1.0 (1.0) | Nicht unterstützt | Nicht unterstützt | Nicht unterstützt |