SyntaxError: Restparameter darf keinen Standardwert haben
Die JavaScript-Ausnahme "rest parameter may not have a default" tritt auf, wenn ein Restparameter einen Standardwert hat. Da der Restparameter immer ein Array erstellt, würde der Standardwert niemals angewendet.
Nachricht
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)
Fehlertyp
Was ist schiefgelaufen?
Ein Standardparameter gibt einem Parameter einen Standardwert, wenn das Argument nicht übergeben wird oder als undefined
übergeben wird. Ein Restparameter sammelt alle restlichen Argumente, die an die Funktion übergeben werden, und erstellt immer ein Array. Daher ergibt es keinen Sinn, einen Standardwert für einen Restparameter zu haben.
Beispiele
Ungültige Fälle
js
function doSomething(...args = []) {}
Gültige Fälle
js
function doSomething(...args) {
// args is always an array
}