What do you call a `function` function?
Eli Perelman
eli at eliperelman.com
Sat Apr 7 18:20:23 UTC 2018
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
differentiated.
Eli Perelman
On Sat, Apr 7, 2018, 12:56 PM T.J. Crowder <tj.crowder at farsightsoftware.com>
wrote:
> 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 at mozilla.org
> https://mail.mozilla.org/listinfo/es-discuss
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.mozilla.org/pipermail/es-discuss/attachments/20180407/a1467aee/attachment.html>
More information about the es-discuss
mailing list