SyntaxError: параметр rest не может иметь значение по умолчанию
Исключение JavaScript "rest parameter may not have a default" возникает, когда параметр rest имеет значение по умолчанию. Поскольку параметр rest всегда создает массив, значение по умолчанию никогда не будет применено.
Сообщение
SyntaxError: Rest parameter may not have a default initializer (V8-based) SyntaxError: rest parameter may not have a default (Firefox) SyntaxError: Unexpected token '='. Expected a ')' or a ',' after a parameter declaration. (Safari)
Тип ошибки
Что пошло не так?
Параметр по умолчанию задает параметру значение по умолчанию, если аргумент не передан или передан как undefined. Параметр rest собирает все оставшиеся аргументы, переданные функции, и всегда создает массив. Следовательно, не имеет смысла задавать значение по умолчанию для параметра rest.
Примеры
Недопустимые случаи
function doSomething(...args = []) {}
Допустимые случаи
function doSomething(...args) {
// args is always an array
}
См. также
© 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/Rest_with_default