Dieser Inhalt wurde automatisch aus dem Englischen übersetzt, und kann Fehler enthalten.Erfahre mehr über dieses Experiment.
SyntaxError: Eine Deklaration im Kopf einer for-of-Schleife darf keinen Initialisierer enthalten
Die JavaScript-Ausnahme "eine Deklaration im Kopf einer for-of-Schleife darf keinen Initialisierer enthalten" tritt auf, wenn der Kopf einerfor...of-Schleife einen Initialisierungs-Ausdruck enthält, wie z. B.for (const i = 0 of iterable). Dies ist in for-of-Schleifen nicht zulässig.
In diesem Artikel
Nachricht
SyntaxError: for-of loop variable declaration may not have an initializer. (V8-based)SyntaxError: a declaration in the head of a for-of loop can't have an initializer (Firefox)SyntaxError: Cannot assign to the loop variable inside a for-of loop header. (Safari)
Fehlertyp
SyntaxErrorWas ist schiefgelaufen?
Der Kopf einerfor...of-Schleife enthält einen Initialisierungs-Ausdruck. Das bedeutet, es wird eine Variable deklariert und ein Wert zugewiesenfor (const i = 0 of iterable). Dies ist in for-of-Schleifen nicht erlaubt. Sie könnten einefor-Schleife verwenden, die einen Initialisierer erlaubt.
Beispiele
>Ungültige for-of-Schleife
const iterable = [10, 20, 30];for (const value = 50 of iterable) { console.log(value);}// SyntaxError: a declaration in the head of a for-of loop can't// have an initializerGültige for-of-Schleife
Sie müssen den Initialisierer (value = 50) im Kopf derfor-of-Schleife entfernen. Möglicherweise wollten Sie 50 als Offset-Wert verwenden, in diesem Fall könnten Sie ihn im Schleifenkörper hinzufügen, zum Beispiel.
const iterable = [10, 20, 30];for (let value of iterable) { value += 50; console.log(value);}// 60// 70// 80