¡Oh, esto es inteligente! Lo estoy sacando del blog de David.
const isRequired = () => ( throw new Error('param is required'); ); const hello = (name = isRequired()) => ( console.log(`hello $(name)`) ); // These will throw errors hello(); hello(undefined); // These will not hello(null); hello('David');
La idea aquí es que usa parámetros predeterminados, como que el b
parámetro aquí tiene un parámetro predeterminado si no le envía nada:
function multiply(a, b = 1) ( return a * b; )
Entonces, arriba, si no proporciona un name
, usará el predeterminado en su lugar, que es esa función que arroja un error.