Legitimate uses of IIFEs?

Šime Vidas sime.vidas at gmail.com
Sat Dec 19 19:15:49 UTC 2015

With block statements + let/const, IIFEs are no longer needed to emulate
block-scoped variables. That got me thinking, are there other uses of
IIFEs, or are they no longer needed?

I’ve checked my code and found instances of this pattern:

var foo = (function () {
    var a, b, c; // helper variables
    // some computation
    return /* final value of foo */;

Btw, there is a "do expression" proposal (stage 0) [1] for this type of

Anything else?

[1]: https://github.com/tc39/ecma262/issues/132
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.mozilla.org/pipermail/es-discuss/attachments/20151219/29ac1374/attachment.html>

More information about the es-discuss mailing list