All Modules All The Time

ES2015 Modules

Although we’ve gotten basically everything else from ES2015 in our browsers (and you can and should be using it without having to run your code through Babel or TypeScript or anything else; IE11 be damned), we haven’t gotten modules. And lots of us really want modules.

This is a really good overview of not just where the various browsers stand today with regard to modules (spoiler: widespread but most of the implementations are still turned off by default and you have to enable a flag to try them out). Also covered is what you can do if you want to write your code with modules and use some tooling to fill in until browsers catch up.

ES6 Modules in Chrome Canary (M60+)

ES2016 and ES2017

While we’re talking about ES2015, I thought it might be interesting to know more about the next two yearly specs for JavaScript (or ECMAScript if you prefer) improvements.

We know what’s going to come in ES2017. The minor items truly are minor, but the major ones (async/await and shared memory) have are pretty neat and they’re not even behind a flag in the newest browsers (or Node.js 7).

P.S. Blink and you might have missed it, but here’s what was in ES2016:

It was just two minor features, one of which you may have already had if you use Lodash regularly and the other being some syntactic sugar. It seemed spectacularly anticlimactic after ES2015 but I think that may have been intentional.

John Munsch avatar
About John Munsch
John Munsch is a professional software developer who works exclusively in JavaScript after years of working in the Java, C++, and C world. He's much happier now.