Documentación offline JavaScript main

SyntaxError: rest parameter may not have a default

main Documentación oficial Licencia CC-BY-SA-2.5Descargado el 2026-08-02

En esta página

The JavaScript exception "rest parameter may not have a default" occurs when a rest parameter has a default value. Because the rest parameter always creates an array, the default value would never apply.

Message#

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)

Error type#

{{jsxref("SyntaxError")}}

What went wrong?#

A default parameter gives a parameter a default value if the argument is not passed or passed as undefined. A rest parameter collects all the remaining arguments passed to the function and always creates an array. Therefore, it doesn't make sense to have a default value for a rest parameter.

Examples#

Invalid cases#

```js-nolint example-bad function doSomething(...args = []) {}

### Valid cases

```js example-good
function doSomething(...args) {
  // args is always an array
}

See also#