SyntaxError: пропущена ) после списка аргументов
JavaScript-исключение "missing ) after argument list" (пропущена ) после списка аргументов) возникает при ошибке в вызове функции. Это может быть опечатка, пропущенный оператор или неэкранированная строка.
Сообщение
SyntaxError: missing ) after argument list (V8-based & Firefox) SyntaxError: Unexpected identifier 'x'. Expected ')' to end an argument list. (Safari)
Тип ошибки
Что пошло не так?
Ошибка в вызове функции. Это может быть опечатка, пропущенный оператор или неэкранированная строка, например.
Примеры
Поскольку оператор "+" для конкатенации строки отсутствует, JavaScript ожидает, что аргумент для функции log будет просто "PI: ". В этом случае он должен быть завершен закрывающей скобкой.
console.log("PI: " Math.PI);
// SyntaxError: missing ) after argument list
Вы можете исправить вызов log, добавив оператор +:
console.log("PI: " + Math.PI);
// "PI: 3.141592653589793"
В качестве альтернативы вы можете использовать шаблонный литерал или воспользоваться тем фактом, что console.log принимает несколько параметров:
console.log(`PI: ${Math.PI}`);
console.log("PI:", Math.PI);
Незавершенные строки
console.log('"Java" + "Script" = \"' + "Java" + 'Script\");
// SyntaxError: missing ) after argument list
Здесь JavaScript думает, что вы имели в виду ); внутри строки и игнорирует ее, и в итоге он не знает, что вы имели в виду ); для завершения функции console.log. Чтобы исправить это, мы могли бы поставить ' после строки "Script":
console.log('"Java" + "Script" = "' + "Java" + 'Script"');
// '"Java" + "Script" = "JavaScript"'
См. также
- Руководство по функциям
© 2005–2025 MDN contributors.
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.
https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Errors/Missing_parenthesis_after_argument_list