¿Es posible establecer el valor predeterminado del parámetro en un parámetro de reposo?

ES6 presenta un grupo de "azúcar sintáctico" conveniente. Entre ellos están losparámetro por defecto capacidades de las funciones de JavaScript, así comoparámetros de descanso. Estoy descubriendo que mi consola (o devTools) se queja (es decir, arroja un error) cada vez que intenta establecer un valor de parámetro predeterminado en un parámetro de reposo. Sorprendentemente, he encontrado pocas referencias a este tema en particular en otros lugares y me pregunto si1.) es posible hacerlo y2.) por qué no (suponiendo que no sea posible).

Como ejemplo, he ideado un ejemplo trivial (pero, con suerte, aún útil). En esta primera iteración de la función, he construido la función de manera que funcione (es decir, sin dar al parámetro rest un valor predeterminado).

const describePerson = (name, ...traits) => `Hi, ${name}! You are ${traits.join(', ')}`;

describePerson('John Doe', 'the prototypical placeholder person');
// => "Hi, John Doe! You are the prototypical placeholder person"

Sin embargo, ahora con el valor predeterminado:

const describePerson = (name, ...traits = ['a nondescript individual']) => `Hi, ${name}! You are ${traits.join(', ')}`;

describePerson('John Doe');
// => Uncaught SyntaxError: Unexpected token =

Cualquier ayuda es muy apreciada.

Respuestas a la pregunta(1)

Su respuesta a la pregunta