Ooo det här är smart! Jag hakar på det här från Davids blogg.
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');
Tanken här är att den använder standardparametrar, som hur b
parametern här har en standard om du inte skickar den någonting:
function multiply(a, b = 1) ( return a * b; )
Så ovan, om du inte tillhandahåller en name
, kommer den att använda standard istället, vilket är den funktionen som ger ett fel.