So where does that leave us in terms of terminology? The following list might be helpful:
- ECMAScript: A language standardized by ECMA International and overseen by the TC39 committee. This term is usually used to refer to the standard itself.
- ECMAScript 5 (ES5): The 5th edition of ECMAScript, standardized in 2009. This standard has been implemented fairly completely in all modern browsers
- ECMAScript 6 (ES6)/ ECMAScript 2015 (ES2015): The 6th edition of ECMAScript, standardized in 2015. This standard has been partially implemented in most modern browsers. To see the state of implementation by different browsers and tools, check out these compatibility tables.
- ECMAScript 2016: The expected 7th edition of ECMAScript. This is scheduled to be released next summer. The details of what the spec will contain have not been finalized yet
- ECMAScript Proposals: Proposed features or syntax that are being considered for future versions of the ECMAScript standard. These move through a process of five stages: Strawman, Proposal, Draft, Candidate and Finished.
- TC39 has a github repo tracking all of their current open proposals.
- If you aren’t familiar with ES6 yet, Babel has a great rundown of its features
- If you want to go deeper with ES6 I’ve heard great things about 2 books on the subject: Exploring ES6 by Axel Rauschmayer and Understanding ECMAScript 6 by Nicholas Zakas2. Axel’s blog 2ality is also a great ES6 resource.