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: missing ) after argument list

Der JavaScript-Fehler "missing ) after argument list" tritt auf, wenn ein Fehler beim Aufruf einer Funktion vorliegt. Dies könnte ein Tippfehler, ein fehlender Operator oder eine nicht maskierte Zeichenkette sein.

Meldung

SyntaxError: missing ) after argument list (V8-based & Firefox)
SyntaxError: Unexpected identifier 'x'. Expected ')' to end an argument list. (Safari)

Fehlertyp

SyntaxError.

Was ist schiefgelaufen?

Es gibt einen Fehler bei der Art und Weise, wie eine Funktion aufgerufen wird. Dies könnte beispielsweise ein Tippfehler, ein fehlender Operator oder eine nicht maskierte Zeichenkette sein.

Beispiele

Da der "+"-Operator fehlt, um die Zeichenkette zu verketten, erwartet JavaScript, dass das Argument für die log-Funktion nur "PI: " ist. In diesem Fall sollte es durch eine schließende Klammer abgeschlossen werden.

js
console.log("PI: " Math.PI);
// SyntaxError: missing ) after argument list

Sie können den log-Aufruf korrigieren, indem Sie den +-Operator hinzufügen:

js
console.log("PI: " + Math.PI);
// "PI: 3.141592653589793"

Alternativ können Sie ein Template Literal verwenden oder die Tatsache nutzen, dass console.log mehrere Parameter akzeptiert:

js
console.log(`PI: ${Math.PI}`);
console.log("PI:", Math.PI);

Nicht abgeschlossene Zeichenketten

js
console.log('"Java" + "Script" = \"' + "Java" + 'Script\");
// SyntaxError: missing ) after argument list

Hier denkt JavaScript, dass Sie ); innerhalb der Zeichenkette meinen, und ignoriert es. Dadurch weiß es letztendlich nicht, dass Sie ); zum Beenden der Funktion console.log meinten. Um dies zu beheben, könnten wir ein ' nach dem "Script"-String setzen:

js
console.log('"Java" + "Script" = "' + "Java" + 'Script"');
// '"Java" + "Script" = "JavaScript"'

Siehe auch