SyntaxError: missing ) after argument list
Der JavaScript-Ausnahmefehler "missing ) after argument list" tritt auf, wenn es einen Fehler bei der Art gibt, wie eine Funktion aufgerufen wird. Dies könnte ein Tippfehler, ein fehlender Operator oder ein nicht maskierter String sein.
Nachricht
SyntaxError: missing ) after argument list (V8-based & Firefox) SyntaxError: Unexpected identifier 'x'. Expected ')' to end an argument list. (Safari)
Fehlertyp
Was ist schiefgelaufen?
Es gibt einen Fehler bei der Art, wie eine Funktion aufgerufen wird. Dies könnte beispielsweise ein Tippfehler, ein fehlender Operator oder ein nicht maskierter String sein.
Beispiele
Da es keinen "+" Operator gibt, um den String 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 beendet werden.
console.log("PI: " Math.PI);
// SyntaxError: missing ) after argument list
Sie können den log
-Aufruf korrigieren, indem Sie den +
Operator hinzufügen:
console.log("PI: " + Math.PI);
// "PI: 3.141592653589793"
Alternativ können Sie in Betracht ziehen, einen Template-String zu verwenden oder die Tatsache nutzen, dass console.log
mehrere Parameter akzeptiert:
console.log(`PI: ${Math.PI}`);
console.log("PI:", Math.PI);
Nicht beendete Strings
console.log('"Java" + "Script" = \"' + "Java" + 'Script\");
// SyntaxError: missing ) after argument list
Hier denkt JavaScript, dass Sie );
innerhalb des Strings haben wollten und ignoriert es, und weiß am Ende nicht, dass Sie );
meinten, um die Funktion console.log
zu beenden. Um dies zu beheben, könnten wir ein '
nach dem "Script"-String setzen:
console.log('"Java" + "Script" = "' + "Java" + 'Script"');
// '"Java" + "Script" = "JavaScript"'