Thanks to visit codestin.com
Credit goes to developer.mozilla.org

Dieser Inhalt wurde automatisch aus dem Englischen übersetzt, und kann Fehler enthalten. Erfahre mehr über dieses Experiment.

View in English Always switch to English

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 einer for...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.

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

SyntaxError

Was ist schiefgelaufen?

Der Kopf einer for...of-Schleife enthält einen Initialisierungs-Ausdruck. Das bedeutet, es wird eine Variable deklariert und ein Wert zugewiesen for (const i = 0 of iterable). Dies ist in for-of-Schleifen nicht erlaubt. Sie könnten eine for-Schleife verwenden, die einen Initialisierer erlaubt.

Beispiele

Ungültige for-of-Schleife

js
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 initializer

Gültige for-of-Schleife

Sie müssen den Initialisierer (value = 50) im Kopf der for-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.

js
const iterable = [10, 20, 30];

for (let value of iterable) {
  value += 50;
  console.log(value);
}
// 60
// 70
// 80

Siehe auch