SyntaxError: параметр после параметра rest
Исключение JavaScript "parameter after rest parameter" возникает, когда за параметром rest следует что-либо еще в списке параметров, включая другой параметр rest, формальный параметр или завершающую запятую.
Сообщение
SyntaxError: Rest parameter must be last formal parameter (V8-based) SyntaxError: parameter after rest parameter (Firefox) SyntaxError: Unexpected token ','. Rest parameter should be the last parameter in a function declaration. (Safari)
Тип ошибки
Что пошло не так?
Параметр rest должен быть последним параметром в определении функции. Это связано с тем, что параметр rest собирает все оставшиеся аргументы, переданные функции, поэтому не имеет смысла иметь какие-либо параметры после него. Следующим символом, отличным от пробела, должна быть закрывающая скобка списка параметров.
Примеры
Недопустимые случаи
function replacer(match, ...groups, offset, string) {}
function doSomething(
arg1,
arg2,
...otherArgs, // Accidental trailing comma
) {}
Допустимые случаи
function replacer(match, ...args) {
const offset = args.at(-2);
const string = args.at(-1);
}
function doSomething(arg1, arg2, ...otherArgs) {}
Смотрите также
© 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/Parameter_after_rest_parameter