I've always referenced them as:

Function declarations:

function a() {}

Function expression:

const a = function() {}

Named function expression:

const b = function a() {}

Arrow function:

const a = () => {}

Not sure it's 100% semantic or descriptive, but it's how I've

Eli Perelman

On Sat, Apr 7, 2018, 12:56 PM T.J. Crowder <tj.crow...@farsightsoftware.com>

> Bit of a silly one, but begging the list's indulgence:
> I routinely explain various JavaScript topics to learners, including arrow
> functions, method syntax, etc. When I want to contrast "arrow function"
> (for instance) with functions defined with `function`, it trips me up, and
> often I end up saying/writing something awful like "`function` function".
> I've considered using "normal function" instead, but arrow functions are
> normal in today's world, as are functions defined with method syntax
> (although I'd usually call them methods), so it's...unsatisfying.
> But `function` function is just so clumsy. And a pedant (none of those
> here, surely!) could argue the definition (are generators `function`
> functions? they're defined with `function` [when you're not using generator
> method syntax], it just has a `*` after it).
> I've also considered "old-style function," but `function` functions still
> have a place in today's JavaScript, just not as prominent a place as they
> used to.
> A recent post to the list used "conventional function," but it may well
> have the same problems "normal function" does.
> My goal is to be clear, and *reasonably* accurate, without being overly
> pedantic.
> Any ideas? Should I just stop worrying and learn to love "normal
> function"? Is there a better term?
> Thanks in advance, folks.
> -- T.J. Crowder
> _______________________________________________
> es-discuss mailing list
> es-discuss@mozilla.org
> https://mail.mozilla.org/listinfo/es-discuss
es-discuss mailing list

Reply via email to